https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99869

--- Comment #4 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:260caabe10cde0158b87968a3bac85575301dafa

commit r11-7963-g260caabe10cde0158b87968a3bac85575301dafa
Author: Patrick Palka <ppa...@redhat.com>
Date:   Fri Apr 2 19:46:24 2021 -0400

    c++: placeholder type constraint inside range-for [PR99869]

    In the testcase below, during ahead-of-time deduction of a constrained
    auto inside a range-based for loop, we trip over an assert within
    do_auto_deduction which expects the deduction context to be
    adc_return_type or adc_variable_type, but do_range_for_auto_deduction
    calls do_auto_deduction with the context defaulted to adc_unspecified.

    We could safely relax the assert to also accept adc_unspecified, but it
    seems the deduction context should really be adc_variable_type here.

    gcc/cp/ChangeLog:

            PR c++/99869
            * parser.c (do_range_for_auto_deduction): Pass adc_variable_type
            to do_auto_deduction.

    gcc/testsuite/ChangeLog:

            PR c++/99869
            * g++.dg/cpp2a/concepts-placeholder6.C: New test.

Reply via email to