case VIR_DOMAIN_CHR_DEVICE_TYPE_SERIAL:
if (src->targetTypeAttr != tgt->targetTypeAttr)
return false;
+
+ ATTRIBUTE_FALLTHROUGH;
+
case VIR_DOMAIN_CHR_DEVICE_TYPE_CONSOLE:
case VIR_DOMAIN_CHR_DEVICE_TYPE_PARALLEL:
return src->target.port == tgt->target.port;
def->target.port);
break;
}
+ ATTRIBUTE_FALLTHROUGH;
+
default:
virBufferAsprintf(buf, "<target port='%d'/>\n",
def->target.port);
def->name);
goto error;
}
- /* fall through to next case */
+ ATTRIBUTE_FALLTHROUGH;
+
case VIR_NETWORK_FORWARD_BRIDGE:
if (def->delay || stp) {
virReportError(VIR_ERR_XML_ERROR,
# endif
# endif
+# ifndef ATTRIBUTE_FALLTHROUGH
+# if __GNUC_PREREQ (7, 0)
+# define ATTRIBUTE_FALLTHROUGH __attribute__((fallthrough))
+# else
+# define ATTRIBUTE_FALLTHROUGH do {} while(0)
+# endif
+# endif
+
# else
# ifndef ATTRIBUTE_UNUSED
# define ATTRIBUTE_UNUSED
# ifndef ATTRIBUTE_RETURN_CHECK
# define ATTRIBUTE_RETURN_CHECK
# endif
+#
+# ifndef ATTRIBUTE_FALLTHROUGH
+# define ATTRIBUTE_FALLTHROUGH do {} while(0)
+# endif
# endif /* __GNUC__ */
default: /* User specified capabilities to drop */
toDrop = (state == VIR_TRISTATE_SWITCH_OFF);
}
- /* Fallthrough */
+ ATTRIBUTE_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;
+
case VIR_NETWORK_FORWARD_PRIVATE:
case VIR_NETWORK_FORWARD_VEPA:
case VIR_NETWORK_FORWARD_PASSTHROUGH:
* VIR_NETWORK_FORWARD_BRIDGE with no bridge device defined
* (since that is macvtap bridge mode).
*/
+ ATTRIBUTE_FALLTHROUGH;
+
case VIR_NETWORK_FORWARD_PRIVATE:
case VIR_NETWORK_FORWARD_VEPA:
case VIR_NETWORK_FORWARD_PASSTHROUGH:
* fall through if netdef->bridge wasn't set, since that is
* macvtap bridge mode network.
*/
+ ATTRIBUTE_FALLTHROUGH;
+
case VIR_NETWORK_FORWARD_PRIVATE:
case VIR_NETWORK_FORWARD_VEPA:
case VIR_NETWORK_FORWARD_PASSTHROUGH:
goto redefine;
break;
}
- /* fall-through */
+ ATTRIBUTE_FALLTHROUGH;
#endif
default: