aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp/constexpr.cc
diff options
context:
space:
mode:
authorJason Merrill <jason@redhat.com>2022-06-23 23:14:35 -0400
committerJason Merrill <jason@redhat.com>2022-07-01 10:49:23 -0400
commit07ac550393d00fcadcee21b44abee6bb30c93949 (patch)
tree7defc84fdface6e8f3b7eddab230e030d3b5418b /gcc/cp/constexpr.cc
parent63abe04999283582b258adf60da6c19d541ebc68 (diff)
downloadgcc-07ac550393d00fcadcee21b44abee6bb30c93949.zip
gcc-07ac550393d00fcadcee21b44abee6bb30c93949.tar.gz
gcc-07ac550393d00fcadcee21b44abee6bb30c93949.tar.bz2
c++: dependent generic lambda template-id [PR106024]
We were wrongly looking up the generic lambda op() in a dependent scope, and then trying to look up its instantiation at substitution time, but lambdas aren't instantiated, so we crashed. The fix is to not look into dependent class scopes. But this created trouble with wrongly trying to use a template from the enclosing scope when we aren't actually looking at a template-argument-list, in template/lookup18.C, so let's avoid that. PR c++/106024 gcc/cp/ChangeLog: * parser.cc (missing_template_diag): Factor out... (cp_parser_id_expression): ...from here. (cp_parser_lookup_name): Don't look in dependent object_type. gcc/testsuite/ChangeLog: * g++.dg/cpp2a/lambda-generic10.C: New test.
Diffstat (limited to 'gcc/cp/constexpr.cc')
0 files changed, 0 insertions, 0 deletions