$(_sc_search_regexp)
sc_prohibit_attribute_macros:
- @prohibit='ATTRIBUTE_(UNUSED|NORETURN|SENTINEL|RETURN_CHECK|NOINLINE|FMT_PRINTF)' \
+ @prohibit='ATTRIBUTE_(UNUSED|NORETURN|SENTINEL|RETURN_CHECK|NOINLINE|FMT_PRINTF|FALLTHROUGH)' \
in_vc_files='\.[ch]$$' \
halt='use GLib macros: G_GNUC_<ATTRIBUTE_SUFFIX> for most' \
$(_sc_search_regexp)
if (src->targetType != tgt->targetType)
return false;
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case VIR_DOMAIN_CHR_DEVICE_TYPE_CONSOLE:
case VIR_DOMAIN_CHR_DEVICE_TYPE_PARALLEL:
def->apic_eoi = eoi;
VIR_FREE(tmp);
}
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case VIR_DOMAIN_FEATURE_ACPI:
case VIR_DOMAIN_FEATURE_PAE:
case VIR_DOMAIN_FEATURE_VIRIDIAN:
/* intentionally fall through to the direct case for
* VIR_NETWORK_FORWARD_BRIDGE with no bridge device defined
*/
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case VIR_NETWORK_FORWARD_PRIVATE:
case VIR_NETWORK_FORWARD_VEPA:
case VIR_STORAGE_SOURCE_POOL_MODE_DEFAULT:
case VIR_STORAGE_SOURCE_POOL_MODE_LAST:
def->src->srcpool->mode = VIR_STORAGE_SOURCE_POOL_MODE_HOST;
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case VIR_STORAGE_SOURCE_POOL_MODE_HOST:
def->src->srcpool->actualtype = VIR_STORAGE_TYPE_BLOCK;
if (!(def->src->path = virStorageVolGetPath(vol)))
def->name);
goto error;
}
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case VIR_NETWORK_FORWARD_BRIDGE:
if (def->delay || stp || def->bridgeZone) {
switch (datatype) {
case DATATYPE_UINT8_HEX:
base = 16;
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case DATATYPE_UINT8:
if (virStrToLong_ui(prop, NULL, base, &uint_val) >= 0) {
if (uint_val <= 0xff) {
case DATATYPE_UINT16_HEX:
base = 16;
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case DATATYPE_UINT16:
if (virStrToLong_ui(prop, NULL, base, &uint_val) >= 0) {
if (uint_val <= 0xffff) {
case DATATYPE_UINT32_HEX:
base = 16;
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case DATATYPE_UINT32:
if (virStrToLong_ui(prop, NULL, base, &uint_val) >= 0) {
item->u.u32 = uint_val;
portData = &rule->p.ipHdrFilter.portData;
protocol = "IP";
dataProtocolID = &rule->p.ipHdrFilter.ipHdr.dataProtocolID;
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case VIR_NWFILTER_RULE_PROTOCOL_IPV6:
if (portData == NULL) {
portData = &rule->p.ipv6HdrFilter.portData;
case DATATYPE_UINT8_HEX:
asHex = true;
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case DATATYPE_IPMASK:
case DATATYPE_IPV6MASK:
/* display all masks in CIDR format */
case DATATYPE_UINT16_HEX:
asHex = true;
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case DATATYPE_UINT16:
virBufferAsprintf(buf, asHex ? "0x%x" : "%d",
item->u.u16);
case DATATYPE_UINT32_HEX:
asHex = true;
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case DATATYPE_UINT32:
virBufferAsprintf(buf, asHex ? "0x%x" : "%u",
item->u.u32);
ret = tmp;
goto cleanup;
}
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case VIR_CPU_MODE_HOST_PASSTHROUGH:
/* host-model and host-passthrough:
/**
*
- * ATTRIBUTE_FALLTHROUGH
+ * G_GNUC_FALLTHROUGH
*
* silence the compiler warning when falling through a switch case
*
+ * TODO: Remove after upgrading to GLib >= 2.60
*/
-#ifndef ATTRIBUTE_FALLTHROUGH
+#ifndef G_GNUC_FALLTHROUGH
# if __GNUC_PREREQ (7, 0)
-# define ATTRIBUTE_FALLTHROUGH __attribute__((fallthrough))
+# define G_GNUC_FALLTHROUGH __attribute__((fallthrough))
# else
-# define ATTRIBUTE_FALLTHROUGH do {} while(0)
+# define G_GNUC_FALLTHROUGH do {} while(0)
# endif
#endif
"newlines"));
goto error;
}
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case VIR_DOMAIN_METADATA_DESCRIPTION:
virCheckNullArgGoto(uri, error);
virCheckNullArgGoto(key, error);
if (VIR_STRDUP(x_nic->bridge,
virBufferCurrentContent(&buf)) < 0)
goto cleanup;
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case VIR_DOMAIN_NET_TYPE_ETHERNET:
if (VIR_STRDUP(x_nic->script, script) < 0)
goto cleanup;
default: /* User specified capabilities to drop */
toDrop = (state == VIR_TRISTATE_SWITCH_OFF);
}
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case VIR_DOMAIN_CAPABILITIES_POLICY_ALLOW:
if (policy == VIR_DOMAIN_CAPABILITIES_POLICY_ALLOW)
* VIR_NETWORK_FORWARD_BRIDGE with no bridge device defined
* (since that is macvtap bridge mode).
*/
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case VIR_NETWORK_FORWARD_PRIVATE:
case VIR_NETWORK_FORWARD_VEPA:
* VIR_NETWORK_FORWARD_BRIDGE with no bridge device defined
* (since that is macvtap bridge mode).
*/
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case VIR_NETWORK_FORWARD_PRIVATE:
case VIR_NETWORK_FORWARD_VEPA:
if (def->bridge != NULL)
bandwidthAllowed = true;
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case VIR_NETWORK_FORWARD_PRIVATE:
case VIR_NETWORK_FORWARD_VEPA:
/* intentionally fall through to the direct case for
* VIR_NETWORK_FORWARD_BRIDGE with no bridge device defined
*/
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case VIR_NETWORK_FORWARD_PRIVATE:
case VIR_NETWORK_FORWARD_VEPA:
if (!lease_new)
break;
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case VIR_LEASE_ACTION_DEL:
/* Delete the corresponding lease, if it already exists */
delete = true;
}
lease_new = NULL;
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case VIR_LEASE_ACTION_DEL:
if (!(leases_str = virJSONValueToString(leases_array_new, true))) {
virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
* early instead of erroring out */
break;
}
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case VIR_GIC_VERSION_3:
case VIR_GIC_VERSION_HOST:
virCommandAddArg(cmd, "-object");
virCommandAddArgBuffer(cmd, &buf);
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case VIR_DOMAIN_SHMEM_MODEL_IVSHMEM_DOORBELL:
devstr = qemuBuildShmemDevStr(def, shmem, qemuCaps);
break;
case QEMU_ASYNC_JOB_SNAPSHOT:
case QEMU_ASYNC_JOB_START:
case QEMU_ASYNC_JOB_NONE:
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case QEMU_ASYNC_JOB_LAST:
break;
}
case QEMU_ASYNC_JOB_SNAPSHOT:
case QEMU_ASYNC_JOB_START:
case QEMU_ASYNC_JOB_NONE:
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case QEMU_ASYNC_JOB_LAST:
break;
}
if (!job->data.commit.topparent)
goto broken;
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case QEMU_BLOCKJOB_TYPE_ACTIVE_COMMIT:
qemuDomainObjPrivateXMLParseBlockjobNodename(job,
"string(./top/@node)",
case VIR_DOMAIN_LIFECYCLE_ACTION_COREDUMP_DESTROY:
if (doCoreDumpToAutoDumpPath(driver, vm, flags) < 0)
goto endjob;
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case VIR_DOMAIN_LIFECYCLE_ACTION_DESTROY:
qemuProcessStop(driver, vm, VIR_DOMAIN_SHUTOFF_CRASHED,
case VIR_DOMAIN_LIFECYCLE_ACTION_COREDUMP_RESTART:
if (doCoreDumpToAutoDumpPath(driver, vm, flags) < 0)
goto endjob;
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case VIR_DOMAIN_LIFECYCLE_ACTION_RESTART:
qemuDomainSetFakeReboot(driver, vm, true);
virReportError(VIR_ERR_OPERATION_UNSUPPORTED,
_("live attach of shmem model '%s' is not supported"),
virDomainShmemModelTypeToString(shmem->model));
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case VIR_DOMAIN_SHMEM_MODEL_LAST:
return -1;
}
virReportError(VIR_ERR_OPERATION_UNSUPPORTED,
_("live detach of shmem model '%s' is not supported"),
virDomainShmemModelTypeToString(shmem->model));
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case VIR_DOMAIN_SHMEM_MODEL_LAST:
return -1;
}
qemuMigrationNBDReportMirrorError(job, disk->dst);
failed = true;
}
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case VIR_DOMAIN_BLOCK_JOB_CANCELED:
case VIR_DOMAIN_BLOCK_JOB_COMPLETED:
diskPriv->migrating = false;
qemuMigrationNBDReportMirrorError(job, disk->dst);
goto cleanup;
}
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case VIR_DOMAIN_BLOCK_JOB_COMPLETED:
ret = 1;
goto cleanup;
* fall through if netdef->bridge wasn't set, since that is
* macvtap bridge mode network.
*/
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case VIR_NETWORK_FORWARD_PRIVATE:
case VIR_NETWORK_FORWARD_VEPA:
if (!priv->tls)
goto failed;
priv->is_secure = 1;
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
#else
(void)tls_priority;
(void)sanity;
}
break;
}
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case VIR_CONF_LLONG:
case VIR_CONF_ULLONG:
switch (len & 3) {
case 3:
k1 ^= tail[2] << 16;
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case 2:
k1 ^= tail[1] << 8;
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case 1:
k1 ^= tail[0];
k1 *= c1;
k1 = rotl32(k1, 15);
k1 *= c2;
h1 ^= k1;
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
default:
break;
}
virReportError(VIR_ERR_OPERATION_FAILED,
_("no iSCSI interface defined for IQN %s"),
initiatoriqn);
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case IQN_ERROR:
default:
return -1;
switch (c_tolower(*suffix)) {
case 'e':
scale *= base;
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case 'p':
scale *= base;
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case 't':
scale *= base;
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case 'g':
scale *= base;
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case 'm':
scale *= base;
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case 'k':
scale *= base;
break;
switch (last_error->code) {
case VIR_ERR_INVALID_ARG:
priv->blockJobNoBytes = true;
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case VIR_ERR_OVERFLOW:
if (!bytes && !raw) {
/* try again with MiB/s, unless forcing bytes */
vshResetLibvirtError();
break;
}
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
default:
goto cleanup;
}
relax_avail = false;
goto redefine;
}
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
#endif
default:
puts(VERSION);
exit(EXIT_SUCCESS);
}
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case 'V':
virshShowVersion(ctl);
exit(EXIT_SUCCESS);
puts(VERSION);
exit(EXIT_SUCCESS);
}
- ATTRIBUTE_FALLTHROUGH;
+ G_GNUC_FALLTHROUGH;
case 'V':
vshAdmShowVersion(ctl);
exit(EXIT_SUCCESS);