diff options
author | Marek Polacek <polacek@redhat.com> | 2020-04-06 19:59:04 -0400 |
---|---|---|
committer | Marek Polacek <polacek@redhat.com> | 2020-04-08 13:37:39 -0400 |
commit | 77d6dfc929832a542a25fc455b90f1a4bc83229c (patch) | |
tree | 06e89b6487e72df9ce0862a3d50e30dc43904da8 /gcc/tree-vect-patterns.c | |
parent | dd9ca9d770a18ce4b16d867f49fef3293b483ff5 (diff) | |
download | gcc-77d6dfc929832a542a25fc455b90f1a4bc83229c.zip gcc-77d6dfc929832a542a25fc455b90f1a4bc83229c.tar.gz gcc-77d6dfc929832a542a25fc455b90f1a4bc83229c.tar.bz2 |
c++: Fix ICE-on-invalid with lambda template [PR94507]
While reducing something else I noticed that we ICE on the following
invalid code. In tsubst_lambda_expr, tsubst_template_decl has already
reported an error and returned the error_mark_node, so make sure we
don't ICE on that. I'm using a goto here because we still have to
do finish_struct because it does popclass ().
PR c++/94507 - ICE-on-invalid with lambda template.
* pt.c (tsubst_lambda_expr): Cope when tsubst_template_decl or
tsubst_function_decl returns error_mark_node.
* g++.dg/cpp2a/lambda-generic7.C: New test.
Diffstat (limited to 'gcc/tree-vect-patterns.c')
0 files changed, 0 insertions, 0 deletions