aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp/lambda.c
diff options
context:
space:
mode:
authorJason Merrill <jason@redhat.com>2019-10-30 22:01:16 -0400
committerJason Merrill <jason@gcc.gnu.org>2019-10-30 22:01:16 -0400
commit56e0346dcb882b07199b8b19616b52f9667e356f (patch)
tree7547594aa1edb233eafc2a8935fc82ee8742e7c5 /gcc/cp/lambda.c
parentd11368e6e0bc88033c2ff8a0e5f534d6d2f36b89 (diff)
downloadgcc-56e0346dcb882b07199b8b19616b52f9667e356f.zip
gcc-56e0346dcb882b07199b8b19616b52f9667e356f.tar.gz
gcc-56e0346dcb882b07199b8b19616b52f9667e356f.tar.bz2
PR c++/92268 - hard error satisfying return-type-requirement
Previously we would put the template arguments for the concept-check in a TEMPLATE_ID and then also pass them to constraints_satisfied_p, which meant that we would try to normalize the concept-check with the fully instantiated arguments, leading to sadness. Simply not passing the args to constraints_satisfied_p fixes the problem. I also noticed that we weren't detecting substitution failure in the constraints, but were silently treating it as success. * constraint.cc (type_deducible_p): Check for substitution failure. (diagnose_compound_requirement): Adjust diagnostic. * pt.c (do_auto_deduction): Don't pass cargs to constraints_satisfied_p. From-SVN: r277654
Diffstat (limited to 'gcc/cp/lambda.c')
0 files changed, 0 insertions, 0 deletions