https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116070
Bug ID: 116070 Summary: broken headers for compile with flags -std=gnu++14 -fconcepts Product: gcc Version: 15.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: alexey.lapshin at espressif dot com Target Milestone: --- To reproduce run any of GCC: 13.3.0+ 14.1.0+ 15.0+ Reproducer: #include <memory> #include <vector> int main() { return 0;} Errors: In file included from /opt/compiler-explorer/gcc-14.1.0/include/c++/14.1.0/bits/move.h:37, from /opt/compiler-explorer/gcc-14.1.0/include/c++/14.1.0/bits/new_allocator.h:36, from /opt/compiler-explorer/gcc-14.1.0/include/c++/14.1.0/x86_64-linux-gnu/bits/c++allocator.h:33, from /opt/compiler-explorer/gcc-14.1.0/include/c++/14.1.0/bits/allocator.h:46, from /opt/compiler-explorer/gcc-14.1.0/include/c++/14.1.0/memory:65, from <source>:1: /opt/compiler-explorer/gcc-14.1.0/include/c++/14.1.0/type_traits:2575:12: error: template parameters not deducible in partial specialization: 2575 | struct __result_of_memobj<_Res _Class::*, _Arg> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /opt/compiler-explorer/gcc-14.1.0/include/c++/14.1.0/type_traits:2575:12: note: '_Class' /opt/compiler-explorer/gcc-14.1.0/include/c++/14.1.0/type_traits:2590:12: error: template parameters not deducible in partial specialization: 2590 | struct __result_of_memfun<_Res _Class::*, _Arg, _Args...> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /opt/compiler-explorer/gcc-14.1.0/include/c++/14.1.0/type_traits:2590:12: note: '_Class' In file included from /opt/compiler-explorer/gcc-14.1.0/include/c++/14.1.0/bits/shared_ptr_base.h:57, from /opt/compiler-explorer/gcc-14.1.0/include/c++/14.1.0/bits/shared_ptr.h:53, from /opt/compiler-explorer/gcc-14.1.0/include/c++/14.1.0/memory:80: /opt/compiler-explorer/gcc-14.1.0/include/c++/14.1.0/bits/refwrap.h:176:12: error: template parameters not deducible in partial specialization: 176 | struct _Weak_result_type_memfun<_Func _Class::*, false> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /opt/compiler-explorer/gcc-14.1.0/include/c++/14.1.0/bits/refwrap.h:176:12: note: '_Class' In file included from /opt/compiler-explorer/gcc-14.1.0/include/c++/14.1.0/exception:166, from /opt/compiler-explorer/gcc-14.1.0/include/c++/14.1.0/ext/concurrence.h:34, from /opt/compiler-explorer/gcc-14.1.0/include/c++/14.1.0/bits/shared_ptr_base.h:62: /opt/compiler-explorer/gcc-14.1.0/include/c++/14.1.0/bits/exception_ptr.h:205:20: error: declaration of '~ std::__exception_ptr::exception_ptr' as non-member 205 | exception_ptr::~exception_ptr() _GLIBCXX_USE_NOEXCEPT | ^~~~~~~~~~~~~~ In file included from /opt/compiler-explorer/gcc-14.1.0/include/c++/14.1.0/vector:67, from <source>:2: /opt/compiler-explorer/gcc-14.1.0/include/c++/14.1.0/bits/stl_bvector.h:597:18: error: 'is_default_constructible_v' was not declared in this scope; did you mean 'is_default_constructible'? 597 | requires is_default_constructible_v<_Bit_alloc_type> | ^~~~~~~~~~~~~~~~~~~~~~~~~~ | is_default_constructible /opt/compiler-explorer/gcc-14.1.0/include/c++/14.1.0/bits/stl_bvector.h:597:9: error: expression must be enclosed in parentheses 597 | requires is_default_constructible_v<_Bit_alloc_type> | ^~~~~~~~ /opt/compiler-explorer/gcc-14.1.0/include/c++/14.1.0/bits/stl_bvector.h:597:9: error: expected ';' at end of member declaration 597 | requires is_default_constructible_v<_Bit_alloc_type> | ^~~~~~~~ | ; /opt/compiler-explorer/gcc-14.1.0/include/c++/14.1.0/bits/stl_bvector.h:597:18: error: 'is_default_constructible_v' does not name a type; did you mean 'is_default_constructible'? 597 | requires is_default_constructible_v<_Bit_alloc_type> | ^~~~~~~~~~~~~~~~~~~~~~~~~~ | is_default_constructible Compiler returned: 1