Also convert some FALLTHROUGH comments to ATTRIBUTE_FALLTHROUGH.
* internal.h: Use __has_attribute to check for fallthrough
attribute.
* elf.c (elf_zstd_decompress): Use ATTRIBUTE_FALLTHROUGH rather
than a FALLTHROUGH comment.
{
case 8:
*pout++ = *plit++;
- /* FALLTHROUGH */
+ ATTRIBUTE_FALLTHROUGH;
case 7:
*pout++ = *plit++;
- /* FALLTHROUGH */
+ ATTRIBUTE_FALLTHROUGH;
case 6:
*pout++ = *plit++;
- /* FALLTHROUGH */
+ ATTRIBUTE_FALLTHROUGH;
case 5:
*pout++ = *plit++;
- /* FALLTHROUGH */
+ ATTRIBUTE_FALLTHROUGH;
case 4:
*pout++ = *plit++;
- /* FALLTHROUGH */
+ ATTRIBUTE_FALLTHROUGH;
case 3:
*pout++ = *plit++;
- /* FALLTHROUGH */
+ ATTRIBUTE_FALLTHROUGH;
case 2:
*pout++ = *plit++;
- /* FALLTHROUGH */
+ ATTRIBUTE_FALLTHROUGH;
case 1:
*pout++ = *plit++;
break;
# endif
#endif
+#ifdef __has_attribute
+# if __has_attribute(fallthrough)
+# define ATTRIBUTE_FALLTHROUGH __attribute__ ((fallthrough))
+# endif
+#endif
#ifndef ATTRIBUTE_FALLTHROUGH
# if (GCC_VERSION >= 7000)
# define ATTRIBUTE_FALLTHROUGH __attribute__ ((__fallthrough__))