From ddea5c08167e28e04c92d2fd92e1b52fec5ac01a Mon Sep 17 00:00:00 2001 From: David CARLIER Date: Wed, 24 Feb 2021 20:34:33 +0000 Subject: [PATCH] crc32 module, clang spurious warning removal. Closes GH-6725. --- ext/standard/crc32.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/ext/standard/crc32.c b/ext/standard/crc32.c index 659c9f0906..cca5917438 100644 --- a/ext/standard/crc32.c +++ b/ext/standard/crc32.c @@ -50,8 +50,10 @@ static inline int has_crc32_insn() { # endif } -# pragma GCC push_options -# pragma GCC target ("+nothing+crc") +# if defined(__GNUC__) && !defined(__clang__) +# pragma GCC push_options +# pragma GCC target ("+nothing+crc") +# endif static uint32_t crc32_aarch64(uint32_t crc, char *p, size_t nr) { while (nr >= sizeof(uint64_t)) { crc = __crc32d(crc, *(uint64_t *)p); @@ -73,7 +75,9 @@ static uint32_t crc32_aarch64(uint32_t crc, char *p, size_t nr) { } return crc; } -# pragma GCC pop_options +# if defined(__GNUC__) && !defined(__clang__) +# pragma GCC pop_options +# endif #endif /* {{{ Calculate the crc32 polynomial of a string */ -- 2.40.0