https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95386
--- Comment #7 from CVS Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by Patrick Palka <ppa...@gcc.gnu.org>: https://gcc.gnu.org/g:aef6e234a8a78db39b4ba034cc4c100c07c294a7 commit r11-738-gaef6e234a8a78db39b4ba034cc4c100c07c294a7 Author: Patrick Palka <ppa...@redhat.com> Date: Fri May 29 21:12:21 2020 -0400 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 changes satisfaction_value to accept INTEGER_CST of any boolean type. gcc/cp/ChangeLog: PR c++/95386 * constraint.cc (satisfaction_value): Accept INTEGER_CST of any boolean type. gcc/testsuite/ChangeLog: PR c++/95386 * g++.dg/concepts/pr95386.C: New test.