[libvirt] [PATCH 6/8] Use G_GNUC_FALLTHROUGH instead of ATTRIBUTE_FALLTHROUGH

Ján Tomko jtomko at redhat.com
Tue Oct 15 12:21:28 UTC 2019


Also define the macro for building with GLib older than 2.60

Signed-off-by: Ján Tomko <jtomko at redhat.com>
---
 build-aux/syntax-check.mk   |  2 +-
 src/conf/domain_conf.c      |  8 ++++----
 src/conf/network_conf.c     |  2 +-
 src/conf/nwfilter_conf.c    | 14 +++++++-------
 src/cpu/cpu_ppc64.c         |  2 +-
 src/internal.h              |  9 +++++----
 src/libvirt-domain.c        |  2 +-
 src/libxl/libxl_conf.c      |  2 +-
 src/lxc/lxc_container.c     |  2 +-
 src/network/bridge_driver.c |  8 ++++----
 src/network/leaseshelper.c  |  4 ++--
 src/qemu/qemu_command.c     |  4 ++--
 src/qemu/qemu_domain.c      |  6 +++---
 src/qemu/qemu_driver.c      |  4 ++--
 src/qemu/qemu_hotplug.c     |  4 ++--
 src/qemu/qemu_migration.c   |  4 ++--
 src/qemu/qemu_process.c     |  2 +-
 src/remote/remote_driver.c  |  2 +-
 src/util/virconf.c          |  2 +-
 src/util/virhashcode.c      |  6 +++---
 src/util/viriscsi.c         |  2 +-
 src/util/virutil.c          | 10 +++++-----
 tools/virsh-domain.c        |  4 ++--
 tools/virsh-edit.c          |  2 +-
 tools/virsh.c               |  2 +-
 tools/virt-admin.c          |  2 +-
 26 files changed, 56 insertions(+), 55 deletions(-)

diff --git a/build-aux/syntax-check.mk b/build-aux/syntax-check.mk
index cfcc339c95..63b9ce70f6 100644
--- a/build-aux/syntax-check.mk
+++ b/build-aux/syntax-check.mk
@@ -629,7 +629,7 @@ sc_avoid_g_gnuc_unused_in_header:
 	  $(_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)
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index 6bd2d4935d..c128d34ba2 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -17486,7 +17486,7 @@ virDomainChrEquals(virDomainChrDefPtr src,
         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:
@@ -20290,7 +20290,7 @@ virDomainDefParseXML(xmlDocPtr xml,
                 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:
@@ -31205,7 +31205,7 @@ virDomainNetResolveActualType(virDomainNetDefPtr iface)
         /* 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:
@@ -31471,7 +31471,7 @@ virDomainDiskTranslateSourcePool(virDomainDiskDefPtr def)
        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)))
diff --git a/src/conf/network_conf.c b/src/conf/network_conf.c
index 58a0e32dd7..75ec5ccc27 100644
--- a/src/conf/network_conf.c
+++ b/src/conf/network_conf.c
@@ -1984,7 +1984,7 @@ virNetworkDefParseXML(xmlXPathContextPtr ctxt,
                            def->name);
             goto error;
         }
-        ATTRIBUTE_FALLTHROUGH;
+        G_GNUC_FALLTHROUGH;
 
     case VIR_NETWORK_FORWARD_BRIDGE:
         if (def->delay || stp || def->bridgeZone) {
diff --git a/src/conf/nwfilter_conf.c b/src/conf/nwfilter_conf.c
index 6b7a606b64..aba12cd698 100644
--- a/src/conf/nwfilter_conf.c
+++ b/src/conf/nwfilter_conf.c
@@ -1863,7 +1863,7 @@ virNWFilterRuleDetailsParse(xmlNodePtr node,
                     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) {
@@ -1880,7 +1880,7 @@ virNWFilterRuleDetailsParse(xmlNodePtr node,
 
                         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) {
@@ -1897,7 +1897,7 @@ virNWFilterRuleDetailsParse(xmlNodePtr node,
 
                         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;
@@ -2131,7 +2131,7 @@ virNWFilterRuleValidate(virNWFilterRuleDefPtr rule)
         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;
@@ -2926,7 +2926,7 @@ virNWFilterRuleDefDetailsFormat(virBufferPtr buf,
 
                case DATATYPE_UINT8_HEX:
                    asHex = true;
-                   ATTRIBUTE_FALLTHROUGH;
+                   G_GNUC_FALLTHROUGH;
                case DATATYPE_IPMASK:
                case DATATYPE_IPV6MASK:
                    /* display all masks in CIDR format */
@@ -2937,7 +2937,7 @@ virNWFilterRuleDefDetailsFormat(virBufferPtr buf,
 
                case DATATYPE_UINT16_HEX:
                    asHex = true;
-                   ATTRIBUTE_FALLTHROUGH;
+                   G_GNUC_FALLTHROUGH;
                case DATATYPE_UINT16:
                    virBufferAsprintf(buf, asHex ? "0x%x" : "%d",
                                      item->u.u16);
@@ -2945,7 +2945,7 @@ virNWFilterRuleDefDetailsFormat(virBufferPtr buf,
 
                case DATATYPE_UINT32_HEX:
                    asHex = true;
-                   ATTRIBUTE_FALLTHROUGH;
+                   G_GNUC_FALLTHROUGH;
                case DATATYPE_UINT32:
                    virBufferAsprintf(buf, asHex ? "0x%x" : "%u",
                                      item->u.u32);
diff --git a/src/cpu/cpu_ppc64.c b/src/cpu/cpu_ppc64.c
index 5194c2adc1..b11695f24d 100644
--- a/src/cpu/cpu_ppc64.c
+++ b/src/cpu/cpu_ppc64.c
@@ -510,7 +510,7 @@ ppc64Compute(virCPUDefPtr host,
                 ret = tmp;
                 goto cleanup;
             }
-            ATTRIBUTE_FALLTHROUGH;
+            G_GNUC_FALLTHROUGH;
 
         case VIR_CPU_MODE_HOST_PASSTHROUGH:
             /* host-model and host-passthrough:
diff --git a/src/internal.h b/src/internal.h
index 1f70123e47..59c58a72e1 100644
--- a/src/internal.h
+++ b/src/internal.h
@@ -137,16 +137,17 @@
 
 /**
  *
- * 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
 
diff --git a/src/libvirt-domain.c b/src/libvirt-domain.c
index 65c73be312..6b12ff5a03 100644
--- a/src/libvirt-domain.c
+++ b/src/libvirt-domain.c
@@ -8037,7 +8037,7 @@ virDomainSetMetadata(virDomainPtr domain,
                                   "newlines"));
             goto error;
         }
-        ATTRIBUTE_FALLTHROUGH;
+        G_GNUC_FALLTHROUGH;
     case VIR_DOMAIN_METADATA_DESCRIPTION:
         virCheckNullArgGoto(uri, error);
         virCheckNullArgGoto(key, error);
diff --git a/src/libxl/libxl_conf.c b/src/libxl/libxl_conf.c
index 443c6fb114..74246e7b3a 100644
--- a/src/libxl/libxl_conf.c
+++ b/src/libxl/libxl_conf.c
@@ -1346,7 +1346,7 @@ libxlMakeNic(virDomainDefPtr def,
             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;
diff --git a/src/lxc/lxc_container.c b/src/lxc/lxc_container.c
index 2a0b04117e..7fcbbb424a 100644
--- a/src/lxc/lxc_container.c
+++ b/src/lxc/lxc_container.c
@@ -2044,7 +2044,7 @@ static int lxcContainerDropCapabilities(virDomainDefPtr def,
             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)
diff --git a/src/network/bridge_driver.c b/src/network/bridge_driver.c
index 4beb28a5d9..fe47668d4d 100644
--- a/src/network/bridge_driver.c
+++ b/src/network/bridge_driver.c
@@ -2961,7 +2961,7 @@ networkStartNetwork(virNetworkDriverStatePtr driver,
          * 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:
@@ -3048,7 +3048,7 @@ networkShutdownNetwork(virNetworkDriverStatePtr driver,
          * 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:
@@ -3433,7 +3433,7 @@ networkValidate(virNetworkDriverStatePtr driver,
         if (def->bridge != NULL)
             bandwidthAllowed = true;
 
-        ATTRIBUTE_FALLTHROUGH;
+        G_GNUC_FALLTHROUGH;
 
     case VIR_NETWORK_FORWARD_PRIVATE:
     case VIR_NETWORK_FORWARD_VEPA:
@@ -4710,7 +4710,7 @@ networkAllocatePort(virNetworkObjPtr obj,
         /* 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:
diff --git a/src/network/leaseshelper.c b/src/network/leaseshelper.c
index dc737879ca..959162b814 100644
--- a/src/network/leaseshelper.c
+++ b/src/network/leaseshelper.c
@@ -193,7 +193,7 @@ main(int argc, char **argv)
         if (!lease_new)
             break;
 
-        ATTRIBUTE_FALLTHROUGH;
+        G_GNUC_FALLTHROUGH;
     case VIR_LEASE_ACTION_DEL:
         /* Delete the corresponding lease, if it already exists */
         delete = true;
@@ -230,7 +230,7 @@ main(int argc, char **argv)
         }
         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",
diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c
index a41156476f..d2fc7b6f1e 100644
--- a/src/qemu/qemu_command.c
+++ b/src/qemu/qemu_command.c
@@ -7254,7 +7254,7 @@ qemuBuildMachineCommandLine(virCommandPtr cmd,
                  * early instead of erroring out */
                 break;
             }
-            ATTRIBUTE_FALLTHROUGH;
+            G_GNUC_FALLTHROUGH;
 
         case VIR_GIC_VERSION_3:
         case VIR_GIC_VERSION_HOST:
@@ -9053,7 +9053,7 @@ qemuBuildShmemCommandLine(virLogManagerPtr logManager,
         virCommandAddArg(cmd, "-object");
         virCommandAddArgBuffer(cmd, &buf);
 
-        ATTRIBUTE_FALLTHROUGH;
+        G_GNUC_FALLTHROUGH;
     case VIR_DOMAIN_SHMEM_MODEL_IVSHMEM_DOORBELL:
         devstr = qemuBuildShmemDevStr(def, shmem, qemuCaps);
         break;
diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c
index b257db44b0..e11c0c8ea2 100644
--- a/src/qemu/qemu_domain.c
+++ b/src/qemu/qemu_domain.c
@@ -209,7 +209,7 @@ qemuDomainAsyncJobPhaseToString(qemuDomainAsyncJob job,
     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;
     }
@@ -234,7 +234,7 @@ qemuDomainAsyncJobPhaseFromString(qemuDomainAsyncJob job,
     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;
     }
@@ -3102,7 +3102,7 @@ qemuDomainObjPrivateXMLParseBlockjobDataSpecific(qemuBlockJobDataPtr job,
             if (!job->data.commit.topparent)
                 goto broken;
 
-            ATTRIBUTE_FALLTHROUGH;
+            G_GNUC_FALLTHROUGH;
         case QEMU_BLOCKJOB_TYPE_ACTIVE_COMMIT:
             qemuDomainObjPrivateXMLParseBlockjobNodename(job,
                                                          "string(./top/@node)",
diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
index 42866c6060..6ce6348593 100644
--- a/src/qemu/qemu_driver.c
+++ b/src/qemu/qemu_driver.c
@@ -4324,7 +4324,7 @@ processGuestPanicEvent(virQEMUDriverPtr driver,
     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,
@@ -4341,7 +4341,7 @@ processGuestPanicEvent(virQEMUDriverPtr driver,
     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);
diff --git a/src/qemu/qemu_hotplug.c b/src/qemu/qemu_hotplug.c
index 88984dff67..fcb206a8af 100644
--- a/src/qemu/qemu_hotplug.c
+++ b/src/qemu/qemu_hotplug.c
@@ -2957,7 +2957,7 @@ qemuDomainAttachShmemDevice(virQEMUDriverPtr driver,
         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;
     }
@@ -5454,7 +5454,7 @@ qemuDomainDetachPrepShmem(virDomainObjPtr vm,
         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;
     }
diff --git a/src/qemu/qemu_migration.c b/src/qemu/qemu_migration.c
index 1cbb27e104..59661fd6b0 100644
--- a/src/qemu/qemu_migration.c
+++ b/src/qemu/qemu_migration.c
@@ -582,7 +582,7 @@ qemuMigrationSrcNBDCopyCancelled(virDomainObjPtr vm,
                 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;
@@ -656,7 +656,7 @@ qemuMigrationSrcNBDCopyCancelOne(virQEMUDriverPtr driver,
             qemuMigrationNBDReportMirrorError(job, disk->dst);
             goto cleanup;
         }
-        ATTRIBUTE_FALLTHROUGH;
+        G_GNUC_FALLTHROUGH;
     case VIR_DOMAIN_BLOCK_JOB_COMPLETED:
         ret = 1;
         goto cleanup;
diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c
index 0afb7c79e4..9c50c4a1d8 100644
--- a/src/qemu/qemu_process.c
+++ b/src/qemu/qemu_process.c
@@ -4811,7 +4811,7 @@ qemuProcessGetNetworkAddress(const char *netname,
          * 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:
diff --git a/src/remote/remote_driver.c b/src/remote/remote_driver.c
index 3191f9032e..bd4017c4dc 100644
--- a/src/remote/remote_driver.c
+++ b/src/remote/remote_driver.c
@@ -1159,7 +1159,7 @@ doRemoteOpen(virConnectPtr conn,
         if (!priv->tls)
             goto failed;
         priv->is_secure = 1;
-        ATTRIBUTE_FALLTHROUGH;
+        G_GNUC_FALLTHROUGH;
 #else
         (void)tls_priority;
         (void)sanity;
diff --git a/src/util/virconf.c b/src/util/virconf.c
index 665805b7cf..6f7bf3be8e 100644
--- a/src/util/virconf.c
+++ b/src/util/virconf.c
@@ -984,7 +984,7 @@ int virConfGetValueStringList(virConfPtr conf,
             }
             break;
         }
-        ATTRIBUTE_FALLTHROUGH;
+        G_GNUC_FALLTHROUGH;
 
     case VIR_CONF_LLONG:
     case VIR_CONF_ULLONG:
diff --git a/src/util/virhashcode.c b/src/util/virhashcode.c
index 98d5dceeba..07d9e16fc4 100644
--- a/src/util/virhashcode.c
+++ b/src/util/virhashcode.c
@@ -101,17 +101,17 @@ uint32_t virHashCodeGen(const void *key, size_t len, uint32_t seed)
     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;
     }
diff --git a/src/util/viriscsi.c b/src/util/viriscsi.c
index b869c4cacd..25b77eead7 100644
--- a/src/util/viriscsi.c
+++ b/src/util/viriscsi.c
@@ -487,7 +487,7 @@ virISCSIScanTargets(const char *portal,
             virReportError(VIR_ERR_OPERATION_FAILED,
                            _("no iSCSI interface defined for IQN %s"),
                            initiatoriqn);
-            ATTRIBUTE_FALLTHROUGH;
+            G_GNUC_FALLTHROUGH;
         case IQN_ERROR:
         default:
             return -1;
diff --git a/src/util/virutil.c b/src/util/virutil.c
index 587540ae03..aae07d48e6 100644
--- a/src/util/virutil.c
+++ b/src/util/virutil.c
@@ -212,19 +212,19 @@ virScaleInteger(unsigned long long *value, const char *suffix,
         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;
diff --git a/tools/virsh-domain.c b/tools/virsh-domain.c
index e188c0a34f..5c0aa0e588 100644
--- a/tools/virsh-domain.c
+++ b/tools/virsh-domain.c
@@ -2596,14 +2596,14 @@ virshBlockJobInfo(vshControl *ctl,
             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;
             }
diff --git a/tools/virsh-edit.c b/tools/virsh-edit.c
index 5091ac74b7..5dc1a1fe5a 100644
--- a/tools/virsh-edit.c
+++ b/tools/virsh-edit.c
@@ -137,7 +137,7 @@ do {
                 relax_avail = false;
                 goto redefine;
             }
-            ATTRIBUTE_FALLTHROUGH;
+            G_GNUC_FALLTHROUGH;
 #endif
 
         default:
diff --git a/tools/virsh.c b/tools/virsh.c
index 0ed46e0e64..4aae877160 100644
--- a/tools/virsh.c
+++ b/tools/virsh.c
@@ -762,7 +762,7 @@ virshParseArgv(vshControl *ctl, int argc, char **argv)
                 puts(VERSION);
                 exit(EXIT_SUCCESS);
             }
-            ATTRIBUTE_FALLTHROUGH;
+            G_GNUC_FALLTHROUGH;
         case 'V':
             virshShowVersion(ctl);
             exit(EXIT_SUCCESS);
diff --git a/tools/virt-admin.c b/tools/virt-admin.c
index 95a3c3d30e..c0cc0999cb 100644
--- a/tools/virt-admin.c
+++ b/tools/virt-admin.c
@@ -1329,7 +1329,7 @@ vshAdmParseArgv(vshControl *ctl, int argc, char **argv)
                 puts(VERSION);
                 exit(EXIT_SUCCESS);
             }
-            ATTRIBUTE_FALLTHROUGH;
+            G_GNUC_FALLTHROUGH;
         case 'V':
             vshAdmShowVersion(ctl);
             exit(EXIT_SUCCESS);
-- 
2.19.2




More information about the libvir-list mailing list