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 <nat...@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 { } ^~~