diff options
author | Marek Polacek <polacek@redhat.com> | 2021-03-05 10:41:41 -0500 |
---|---|---|
committer | Marek Polacek <polacek@redhat.com> | 2021-03-05 17:55:27 -0500 |
commit | c2e64c33d9d903f0a52565ad98300feea0ffc580 (patch) | |
tree | 81dede6337af8e7772e952f567d32f2c6c427025 /gcc/lra-constraints.c | |
parent | 812230c63c3efcf2cb36965fe178420b5f1892a6 (diff) | |
download | gcc-c2e64c33d9d903f0a52565ad98300feea0ffc580.zip gcc-c2e64c33d9d903f0a52565ad98300feea0ffc580.tar.gz gcc-c2e64c33d9d903f0a52565ad98300feea0ffc580.tar.bz2 |
c++: ICE with -Wshadow and enumerator in template [PR99120]
We crash here, because in a template, an enumerator doesn't have
a type until we've called finish_enum_value_list. But our -Wshadow
implementation, check_local_shadow, is called when we pushdecl in
build_enumerator, which takes place before finish_enum_value_list.
gcc/cp/ChangeLog:
PR c++/99120
* name-lookup.c (check_local_shadow): Check if the type of decl
is non-null before checking TYPE_PTR*.
gcc/testsuite/ChangeLog:
PR c++/99120
* g++.dg/warn/Wshadow-17.C: New test.
Diffstat (limited to 'gcc/lra-constraints.c')
0 files changed, 0 insertions, 0 deletions