https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115796

--- Comment #3 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by hongtao Liu <liuho...@gcc.gnu.org>:

https://gcc.gnu.org/g:23ab7f632f4f5bae67fb53cf7b18fea7ba7242c4

commit r15-1905-g23ab7f632f4f5bae67fb53cf7b18fea7ba7242c4
Author: liuhongt <hongtao....@intel.com>
Date:   Mon Jul 8 10:35:35 2024 +0800

    Rename __{float,double}_u to __x86_{float,double}_u to avoid pulluting the
namespace.

    I have a build failure on NetBSD as the namespace pollution avoidance
causes
    a direct hit with the system /usr/include/math.h
    =======================================================================

    In file included from /usr/src/local/gcc/obj/gcc/include/emmintrin.h:31,
                     from
/usr/src/local/gcc/obj/x86_64-unknown-netbsd10.99/libstdc++-v3/include/ext/random:45,
                     from
/usr/src/local/gcc/libstdc++-v3/include/precompiled/extc++.h:65:
    /usr/src/local/gcc/obj/gcc/include/xmmintrin.h:75:15: error: conflicting
declaration 'typedef float __float_u'
       75 | typedef float __float_u __attribute__ ((__may_alias__, __aligned__
(1)));
          |               ^~~~~~~~~
    In file included from
/usr/src/local/gcc/obj/x86_64-unknown-netbsd10.99/libstdc++-v3/include/cmath:47,
                     from
/usr/src/local/gcc/obj/x86_64-unknown-netbsd10.99/libstdc++-v3/include/x86_64-unknown-netbsd10.99/bits/stdc++.h:114,
                     from
/usr/src/local/gcc/libstdc++-v3/include/precompiled/extc++.h:32:
    /usr/src/local/gcc/obj/gcc/include-fixed/math.h:49:7: note: previous
declaration as 'union __float_u'
       49 | union __float_u {

    gcc/ChangeLog:

            PR target/115796
            * config/i386/emmintrin.h (__float_u): Rename to ..
            (__x86_float_u): .. this.
            (_mm_load_sd): Ditto.
            (_mm_store_sd): Ditto.
            (_mm_loadh_pd): Ditto.
            (_mm_loadl_pd): Ditto.
            * config/i386/xmmintrin.h (__double_u): Rename to ..
            (__x86_double_u): .. this.
            (_mm_load_ss): Ditto.
            (_mm_store_ss): Ditto.

    gcc/testsuite/ChangeLog:

            * gcc.target/i386/pr115796.c: New test.

Reply via email to