https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67147
Bug ID: 67147
Summary: [concepts] ICE on checking concept with default
template arguments
Product: gcc
Version: c++-concepts
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: eric.niebler at gmail dot com
Target Milestone: ---
template <class F, class I1, class I2 = I1>
concept bool IndirectCallableRelation() {
return true;
}
template <class, class, class = void>
constexpr bool indirect_relation() { return false; }
IndirectCallableRelation{F, I1}
constexpr bool indirect_relation() { return true; }
IndirectCallableRelation{F, I1, I2}
constexpr bool indirect_relation() { return true; }
leads to:
test.cpp:9:31: internal compiler error: in tsubst, at cp/pt.c:12607
IndirectCallableRelation{F, I1}
^
test.cpp:9:31: internal compiler error: Aborted
g++: internal compiler error: Aborted (program cc1plus)
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.