libbacktrace: use __attribute__((__fallthrough__))

Use an attribute rather than a comment when falling through a switch case.

	* internal.h (ATTRIBUTE_FALLTHROUGH): Define.
	* elf.c (elf_zlib_inflate): Use ATTRIBUTE_FALLTHROUGH.
This commit is contained in:
Ian Lance Taylor 2020-10-20 11:47:35 -07:00
parent e864d395b4
commit d962ef77da
2 changed files with 16 additions and 8 deletions

View File

@ -2081,10 +2081,10 @@ elf_zlib_inflate (const unsigned char *pin, size_t sin, uint16_t *zdebug_table,
{
case 6:
*plen++ = prev;
/* fallthrough */
ATTRIBUTE_FALLTHROUGH;
case 5:
*plen++ = prev;
/* fallthrough */
ATTRIBUTE_FALLTHROUGH;
case 4:
*plen++ = prev;
}
@ -2115,22 +2115,22 @@ elf_zlib_inflate (const unsigned char *pin, size_t sin, uint16_t *zdebug_table,
{
case 10:
*plen++ = 0;
/* fallthrough */
ATTRIBUTE_FALLTHROUGH;
case 9:
*plen++ = 0;
/* fallthrough */
ATTRIBUTE_FALLTHROUGH;
case 8:
*plen++ = 0;
/* fallthrough */
ATTRIBUTE_FALLTHROUGH;
case 7:
*plen++ = 0;
/* fallthrough */
ATTRIBUTE_FALLTHROUGH;
case 6:
*plen++ = 0;
/* fallthrough */
ATTRIBUTE_FALLTHROUGH;
case 5:
*plen++ = 0;
/* fallthrough */
ATTRIBUTE_FALLTHROUGH;
case 4:
*plen++ = 0;
}

View File

@ -56,6 +56,14 @@ POSSIBILITY OF SUCH DAMAGE. */
# endif
#endif
#ifndef ATTRIBUTE_FALLTHROUGH
# if (GCC_VERSION >= 7000)
# define ATTRIBUTE_FALLTHROUGH __attribute__ ((__fallthrough__))
# else
# define ATTRIBUTE_FALLTHROUGH
# endif
#endif
#ifndef HAVE_SYNC_FUNCTIONS
/* Define out the sync functions. These should never be called if