https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78360
Bug ID: 78360 Summary: missing throw()s in explicit instantiation declarations for has_facet() Product: gcc Version: 7.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: trippels at gcc dot gnu.org Target Milestone: --- clang complains: markus@x4 tmp % echo "#include<iostream>" | clang++ -std=c++1z -x c++ -c - In file included from <stdin>:1: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/iostream:39: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/ostream:38: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/ios:42: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/ios_base.h:41: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/locale_classes.h:850: /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/locale_classes.tcc:279:5: error: explicit instantiation of 'has_facet' does not refer to a function template, variable template, member function, member class, or static data member has_facet<collate<char> >(const locale&); ^ /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/locale_classes.tcc:104:5: note: candidate template ignored: could not match 'bool (const std::locale &) throw()' against 'bool (const std::locale &)' has_facet(const locale& __loc) throw() ^ /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/locale_classes.tcc:291:5: error: explicit instantiation of 'has_facet' does not refer to a function template, variable template, member function, member class, or static data member has_facet<collate<wchar_t> >(const locale&); ^ /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/locale_classes.tcc:104:5: note: candidate template ignored: could not match 'bool (const std::locale &) throw()' against 'bool (const std::locale &)' has_facet(const locale& __loc) throw() ^ In file included from <stdin>:1: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/iostream:39: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/ostream:38: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/ios:44: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/basic_ios.h:37: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/locale_facets.h:2651: /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/locale_facets.tcc:1319:5: error: explicit instantiation of 'has_facet' does not refer to a function template, variable template, member function, member class, or static data member has_facet<ctype<char> >(const locale&); ^ /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/locale_classes.tcc:104:5: note: candidate template ignored: could not match 'bool (const std::locale &) throw()' against 'bool (const std::locale &)' has_facet(const locale& __loc) throw() ^ In file included from <stdin>:1: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/iostream:39: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/ostream:38: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/ios:44: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/basic_ios.h:37: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/locale_facets.h:2651: /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/locale_facets.tcc:1323:5: error: explicit instantiation of 'has_facet' does not refer to a function template, variable template, member function, member class, or static data member has_facet<numpunct<char> >(const locale&); ^ /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/locale_classes.tcc:104:5: note: candidate template ignored: could not match 'bool (const std::locale &) throw()' against 'bool (const std::locale &)' has_facet(const locale& __loc) throw() ^ In file included from <stdin>:1: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/iostream:39: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/ostream:38: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/ios:44: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/basic_ios.h:37: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/locale_facets.h:2651: /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/locale_facets.tcc:1327:5: error: explicit instantiation of 'has_facet' does not refer to a function template, variable template, member function, member class, or static data member has_facet<num_put<char> >(const locale&); ^ /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/locale_classes.tcc:104:5: note: candidate template ignored: could not match 'bool (const std::locale &) throw()' against 'bool (const std::locale &)' has_facet(const locale& __loc) throw() ^ In file included from <stdin>:1: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/iostream:39: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/ostream:38: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/ios:44: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/basic_ios.h:37: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/locale_facets.h:2651: /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/locale_facets.tcc:1331:5: error: explicit instantiation of 'has_facet' does not refer to a function template, variable template, member function, member class, or static data member has_facet<num_get<char> >(const locale&); ^ /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/locale_classes.tcc:104:5: note: candidate template ignored: could not match 'bool (const std::locale &) throw()' against 'bool (const std::locale &)' has_facet(const locale& __loc) throw() ^ In file included from <stdin>:1: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/iostream:39: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/ostream:38: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/ios:44: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/basic_ios.h:37: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/locale_facets.h:2651: /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/locale_facets.tcc:1358:5: error: explicit instantiation of 'has_facet' does not refer to a function template, variable template, member function, member class, or static data member has_facet<ctype<wchar_t> >(const locale&); ^ /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/locale_classes.tcc:104:5: note: candidate template ignored: could not match 'bool (const std::locale &) throw()' against 'bool (const std::locale &)' has_facet(const locale& __loc) throw() ^ In file included from <stdin>:1: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/iostream:39: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/ostream:38: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/ios:44: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/basic_ios.h:37: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/locale_facets.h:2651: /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/locale_facets.tcc:1362:5: error: explicit instantiation of 'has_facet' does not refer to a function template, variable template, member function, member class, or static data member has_facet<numpunct<wchar_t> >(const locale&); ^ /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/locale_classes.tcc:104:5: note: candidate template ignored: could not match 'bool (const std::locale &) throw()' against 'bool (const std::locale &)' has_facet(const locale& __loc) throw() ^ In file included from <stdin>:1: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/iostream:39: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/ostream:38: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/ios:44: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/basic_ios.h:37: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/locale_facets.h:2651: /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/locale_facets.tcc:1366:5: error: explicit instantiation of 'has_facet' does not refer to a function template, variable template, member function, member class, or static data member has_facet<num_put<wchar_t> >(const locale&); ^ /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/locale_classes.tcc:104:5: note: candidate template ignored: could not match 'bool (const std::locale &) throw()' against 'bool (const std::locale &)' has_facet(const locale& __loc) throw() ^ In file included from <stdin>:1: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/iostream:39: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/ostream:38: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/ios:44: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/basic_ios.h:37: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/locale_facets.h:2651: /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/locale_facets.tcc:1370:5: error: explicit instantiation of 'has_facet' does not refer to a function template, variable template, member function, member class, or static data member has_facet<num_get<wchar_t> >(const locale&); ^ /usr/lib/gcc/x86_64-pc-linux-gnu/7.0.0/include/g++-v7/bits/locale_classes.tcc:104:5: note: candidate template ignored: could not match 'bool (const std::locale &) throw()' against 'bool (const std::locale &)' has_facet(const locale& __loc) throw() ^ 10 errors generated.