c++: satisfaction value of type typedef to bool [PR95386]
In the testcase below, the satisfaction value of fn1<int>'s constraint is INTEGER_CST '1' of type BOOLEAN_TYPE value_type, which is a typedef to the standard boolean_type_node. But satisfaction_value expects to see exactly boolean_true_node or integer_one_node, which this value is neither, causing us to trip over the assert therein. This patch relaxes satisfaction_value to accept any INTEGER_CST which satisfies integer_zerop or integer_onep. gcc/cp/ChangeLog: PR c++/95386 * constraint.cc (satisfaction_value): Relax to accept any INTEGER_CST that satisfies integer_zerop or integer_onep. gcc/testsuite/ChangeLog: PR c++/95386 * g++.dg/concepts/pr95386.C: New test.
Showing
gcc/testsuite/g++.dg/concepts/pr95386.C
0 → 100644
Please
register
or
sign in
to comment