diff options
author | Ian Lance Taylor <iant@golang.org> | 2020-10-20 11:47:35 -0700 |
---|---|---|
committer | Ian Lance Taylor <iant@golang.org> | 2020-10-20 11:49:58 -0700 |
commit | d962ef77dadea87b2bf30487bddda00c350bf0ba (patch) | |
tree | 258889e52b0c95589f726d511bb1e87a7d77f910 /libbacktrace | |
parent | e864d395b4e862cece37abe178e7ebd631b5348b (diff) | |
download | gcc-d962ef77dadea87b2bf30487bddda00c350bf0ba.zip gcc-d962ef77dadea87b2bf30487bddda00c350bf0ba.tar.gz gcc-d962ef77dadea87b2bf30487bddda00c350bf0ba.tar.bz2 |
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.
Diffstat (limited to 'libbacktrace')
-rw-r--r-- | libbacktrace/elf.c | 16 | ||||
-rw-r--r-- | libbacktrace/internal.h | 8 |
2 files changed, 16 insertions, 8 deletions
diff --git a/libbacktrace/elf.c b/libbacktrace/elf.c index 941f820d..d52b86c 100644 --- a/libbacktrace/elf.c +++ b/libbacktrace/elf.c @@ -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; } diff --git a/libbacktrace/internal.h b/libbacktrace/internal.h index 047a700..659db9e 100644 --- a/libbacktrace/internal.h +++ b/libbacktrace/internal.h @@ -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 |