https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100419
Bug ID: 100419 Summary: Arm: arm_mve.h generates warning when compiled with -Wsystem-headers. Product: gcc Version: 12.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: sripar01 at gcc dot gnu.org Target Milestone: --- Host: x86_64 Target: arm On compiling following testcase using -Wsystem-headers options, generates lot of warnings related to redefined macros in header file "arm_mve.h" $ cat bug.c #include "arm_mve.h" $arm-none-eabi-gcc -mcpu=cortex-m55+nofp -mfloat-abi=hard bug.c -Wsystem-headers -c In file included from bug.c:1: /media/sripar01/2tb_work/embedded_toolchain/gcc-arm-none-eabi-10-2020-q4-major/lib/gcc/arm-none-eabi/10.2.1/include/arm_mve.h:38868: warning: "__arm_vcmpneq" redefined 38868 | #define __arm_vcmpneq(p0,p1) ({ __typeof(p0) __p0 = (p0); \ | /media/sripar01/2tb_work/embedded_toolchain/gcc-arm-none-eabi-10-2020-q4-major/lib/gcc/arm-none-eabi/10.2.1/include/arm_mve.h:38416: note: this is the location of the previous definition 38416 | #define __arm_vcmpneq(p0,p1) ({ __typeof(p0) __p0 = (p0); \ | /media/sripar01/2tb_work/embedded_toolchain/gcc-arm-none-eabi-10-2020-q4-major/lib/gcc/arm-none-eabi/10.2.1/include/arm_mve.h:39990: warning: "__arm_vstrwq_scatter_offset_p" redefined 39990 | #define __arm_vstrwq_scatter_offset_p(p0,p1,p2,p3) ({ __typeof(p1) __p1 = (p1); \ | /media/sripar01/2tb_work/embedded_toolchain/gcc-arm-none-eabi-10-2020-q4-major/lib/gcc/arm-none-eabi/10.2.1/include/arm_mve.h:39984: note: this is the location of the previous definition 39984 | #define __arm_vstrwq_scatter_offset_p(p0,p1,p2,p3) ({ __typeof(p1) __p1 = (p1); \ | /media/sripar01/2tb_work/embedded_toolchain/gcc-arm-none-eabi-10-2020-q4-major/lib/gcc/arm-none-eabi/10.2.1/include/arm_mve.h:41625: warning: "__arm_vmaxq_x" redefined 41625 | #define __arm_vmaxq_x(p1,p2,p3) ({ __typeof(p1) __p1 = (p1); \ | /media/sripar01/2tb_work/embedded_toolchain/gcc-arm-none-eabi-10-2020-q4-major/lib/gcc/arm-none-eabi/10.2.1/include/arm_mve.h:40157: note: this is the location of the previous definition 40157 | #define __arm_vmaxq_x(p1,p2,p3) ({ __typeof(p1) __p1 = (p1); \ | /media/sripar01/2tb_work/embedded_toolchain/gcc-arm-none-eabi-10-2020-q4-major/lib/gcc/arm-none-eabi/10.2.1/include/arm_mve.h:41807: warning: "__arm_vmlsdavaq" redefined 41807 | #define __arm_vmlsdavaq(p0,p1,p2) ({ __typeof(p0) __p0 = (p0); \ | /media/sripar01/2tb_work/embedded_toolchain/gcc-arm-none-eabi-10-2020-q4-major/lib/gcc/arm-none-eabi/10.2.1/include/arm_mve.h:39402: note: this is the location of the previous definition 39402 | #define __arm_vmlsdavaq(p0,p1,p2) ({ __typeof(p0) __p0 = (p0); \ | /media/sripar01/2tb_work/embedded_toolchain/gcc-arm-none-eabi-10-2020-q4-major/lib/gcc/arm-none-eabi/10.2.1/include/arm_mve.h:41815: warning: "__arm_vmlsdavaxq" redefined 41815 | #define __arm_vmlsdavaxq(p0,p1,p2) ({ __typeof(p0) __p0 = (p0); \ | /media/sripar01/2tb_work/embedded_toolchain/gcc-arm-none-eabi-10-2020-q4-major/lib/gcc/arm-none-eabi/10.2.1/include/arm_mve.h:39394: note: this is the location of the previous definition 39394 | #define __arm_vmlsdavaxq(p0,p1,p2) ({ __typeof(p0) __p0 = (p0); \ /media/sripar01/2tb_work/embedded_toolchain/gcc-arm-none-eabi-10-2020-q4-major/lib/gcc/arm-none-eabi/10.2.1/include/arm_mve.h:41830: warning: "__arm_vmlsdavq_p" redefined 41830 | #define __arm_vmlsdavq_p(p0,p1,p2) ({ __typeof(p0) __p0 = (p0); \ | /media/sripar01/2tb_work/embedded_toolchain/gcc-arm-none-eabi-10-2020-q4-major/lib/gcc/arm-none-eabi/10.2.1/include/arm_mve.h:39384: note: this is the location of the previous definition 39384 | #define __arm_vmlsdavq_p(p0,p1,p2) ({ __typeof(p0) __p0 = (p0); \ | /media/sripar01/2tb_work/embedded_toolchain/gcc-arm-none-eabi-10-2020-q4-major/lib/gcc/arm-none-eabi/10.2.1/include/arm_mve.h:41844: warning: "__arm_vmlsdavxq_p" redefined 41844 | #define __arm_vmlsdavxq_p(p0,p1,p2) ({ __typeof(p0) __p0 = (p0); \ | /media/sripar01/2tb_work/embedded_toolchain/gcc-arm-none-eabi-10-2020-q4-major/lib/gcc/arm-none-eabi/10.2.1/include/arm_mve.h:39374: note: this is the location of the previous definition 39374 | #define __arm_vmlsdavxq_p(p0,p1,p2) ({ __typeof(p0) __p0 = (p0); \ | /media/sripar01/2tb_work/embedded_toolchain/gcc-arm-none-eabi-10-2020-q4-major/lib/gcc/arm-none-eabi/10.2.1/include/arm_mve.h:41945: warning: "__arm_vrmlaldavhaq" redefined 41945 | #define __arm_vrmlaldavhaq(p0,p1,p2) ({ __typeof(p0) __p0 = (p0); \ | /media/sripar01/2tb_work/embedded_toolchain/gcc-arm-none-eabi-10-2020-q4-major/lib/gcc/arm-none-eabi/10.2.1/include/arm_mve.h:39364: note: this is the location of the previous definition 39364 | #define __arm_vrmlaldavhaq(p0,p1,p2) ({ __typeof(p0) __p0 = (p0); \ | /media/sripar01/2tb_work/embedded_toolchain/gcc-arm-none-eabi-10-2020-q4-major/lib/gcc/arm-none-eabi/10.2.1/include/arm_mve.h:41991: warning: "__arm_vstrbq_p" redefined 41991 | #define __arm_vstrbq_p(p0,p1,p2) ({ __typeof(p1) __p1 = (p1); \ | /media/sripar01/2tb_work/embedded_toolchain/gcc-arm-none-eabi-10-2020-q4-major/lib/gcc/arm-none-eabi/10.2.1/include/arm_mve.h:39742: note: this is the location of the previous definition 39742 | #define __arm_vstrbq_p(p0,p1,p2) ({ __typeof(p0) __p0 = (p0); \ | /media/sripar01/2tb_work/embedded_toolchain/gcc-arm-none-eabi-10-2020-q4-major/lib/gcc/arm-none-eabi/10.2.1/include/arm_mve.h:42000: warning: "__arm_vstrbq_scatter_offset" redefined 42000 | #define __arm_vstrbq_scatter_offset(p0,p1,p2) ({ __typeof(p1) __p1 = (p1); \ | /media/sripar01/2tb_work/embedded_toolchain/gcc-arm-none-eabi-10-2020-q4-major/lib/gcc/arm-none-eabi/10.2.1/include/arm_mve.h:39717: note: this is the location of the previous definition 39717 | #define __arm_vstrbq_scatter_offset(p0,p1,p2) ({ __typeof(p0) __p0 = (p0); \ ... $arm-none-eabi-gcc -v Using built-in specs. COLLECT_GCC=/arm/pdtl/builds/latest-fsf-trunk/installed/cen7x86_64/arm-none-eabi/bin/arm-none-eabi-gcc COLLECT_LTO_WRAPPER=/arm/pdtl/builds/fsf-trunk.2464/installed/cen7x86_64/arm-none-eabi/bin/../libexec/gcc/arm-none-eabi/12.0.0/lto-wrapper Target: arm-none-eabi Configured with: /data/dgboter/bbs/build21--cen7x86_64/buildbot/cen7x86_64--arm-none-eabi--all-profiles/build/src/gcc/configure --target=arm-none-eabi --prefix=/data/dgboter/bbs/build21--cen7x86_64/buildbot/cen7x86_64--arm-none-eabi--all-profiles/build/build-arm-none-eabi/install// --with-gmp=/data/dgboter/bbs/build21--cen7x86_64/buildbot/cen7x86_64--arm-none-eabi--all-profiles/build/build-arm-none-eabi/host-tools --with-mpfr=/data/dgboter/bbs/build21--cen7x86_64/buildbot/cen7x86_64--arm-none-eabi--all-profiles/build/build-arm-none-eabi/host-tools --with-mpc=/data/dgboter/bbs/build21--cen7x86_64/buildbot/cen7x86_64--arm-none-eabi--all-profiles/build/build-arm-none-eabi/host-tools --with-isl=/data/dgboter/bbs/build21--cen7x86_64/buildbot/cen7x86_64--arm-none-eabi--all-profiles/build/build-arm-none-eabi/host-tools --disable-shared --disable-nls --disable-threads --disable-tls --enable-checking=yes --enable-languages=c,c++,fortran --with-newlib --with-multilib-list=aprofile,rmprofile --with-pkgversion=fsf-trunk.2464 Thread model: single Supported LTO compression algorithms: zlib gcc version 12.0.0 20210426 (experimental)