https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104410
Bug ID: 104410 Summary: Internal error using default-initialized constexpr bool in requires clause Product: gcc Version: 11.2.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: oliver.rosten at googlemail dot com Target Milestone: --- #include <type_traits> template<class T> constexpr bool use_func_v{}; // Using this instead is fine! //template<class T> //constexpr bool use_func_v{false}; struct func_obj { template<class T> requires use_func_v<T> void operator()(T, T) const {} }; constexpr bool bar{std::is_invocable_v<func_obj, char, char>}; ----> internal error, see https://godbolt.org/z/qsbPYq67a