This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug c++/81064] New: Inline namespace regression


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

            Bug ID: 81064
           Summary: Inline namespace regression
           Product: gcc
           Version: 8.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: nathan at gcc dot gnu.org
  Target Milestone: ---

My name lookup patches may have caused this report from François Dumont:

I think your patch:

2017-05-30  Nathan Sidwell  <nathan@acm.org>

    Kill IDENTIFIER_NAMESPACE_BINDINGS
    * cp-tree.h (lang_identifier): Delete namespace_bindings.
    (IDENTIFIER_NAMESPACE_BINDINGS): Delete.
    (lang_decl_ns): Add bindings.
    (DECL_NAMESPACE_BINDINGS): New.
    * lex.c (retrofit_lang_decl): Create namespace hash table.
    * name-lookup.c (find_namespace_slot): Change to use hash-map.
    * ptree.c (cxx_print_binding): Delete.
    (cxx_print_identifier): Remove NAMESPACE_BINDING printing. 

Introduced a regression cause when I build libstdc++ with
--enable-symvers=gnu-versioned-namespace it results in:

In file included from
/home/fdt/dev/gcc/build_versioned_ns/x86_64-pc-linux-gnu/libstdc++-v3/include/cassert:43:0,
                 from
/home/fdt/dev/gcc/git/libstdc++-v3/include/precompiled/stdc++.h:33:
/home/fdt/dev/gcc/build_versioned_ns/x86_64-pc-linux-gnu/libstdc++-v3/include/bits/cpp_type_traits.h:71:1:
error: entre en conflit avec la déclaration de l'espace de noms « std::__8 »
 _GLIBCXX_BEGIN_NAMESPACE_VERSION
 ^
/home/fdt/dev/gcc/build_versioned_ns/x86_64-pc-linux-gnu/libstdc++-v3/include/x86_64-pc-linux-gnu/bits/c++config.h:280:20:
note: la déclaration précédente de l'espace de noms « std::__8 » est ici
   inline namespace __8 { }
                    ^~~

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]