]> gcc.gnu.org Git - gcc.git/commit
c++: duplicate const static members [PR 99283]
authorNathan Sidwell <nathan@acm.org>
Tue, 30 Mar 2021 16:45:59 +0000 (09:45 -0700)
committerNathan Sidwell <nathan@acm.org>
Tue, 30 Mar 2021 16:52:21 +0000 (09:52 -0700)
commit5f3c6027257118469a722816e228394b5978ddb0
tree6e9fcebdfa65a81124a5bff9b307812dd79f419b
parent953624089be3f51c2ebacba65be8521bf6ae8430
c++: duplicate const static members [PR 99283]

This is the bug that keeps on giving.  Reducing it has been successful
at hitting other defects. In this case, some more specialization hash
table fun, plus an issue with reading in a definition of a duplicated
declaration.  At least I discovered a null context check is no longer
needed.

PR c++/99283
gcc/cp/
* module.cc (dumper::operator): Make less brittle.
(trees_out::core_bools): VAR_DECLs always have a context.
(trees_out::key_mergeable): Use same_type_p for asserting.
(trees_in::read_var_def): Propagate
DECL_INITIALIZED_BY_CONSTANT_EXPRESSION_P.
gcc/testsuite/
* g++.dg/modules/pr99283-5.h: New.
* g++.dg/modules/pr99283-5_a.H: New.
* g++.dg/modules/pr99283-5_b.H: New.
* g++.dg/modules/pr99283-5_c.C: New.
gcc/cp/module.cc
gcc/testsuite/g++.dg/modules/pr99283-5.h [new file with mode: 0644]
gcc/testsuite/g++.dg/modules/pr99283-5_a.H [new file with mode: 0644]
gcc/testsuite/g++.dg/modules/pr99283-5_b.H [new file with mode: 0644]
gcc/testsuite/g++.dg/modules/pr99283-5_c.C [new file with mode: 0644]
This page took 0.070237 seconds and 5 git commands to generate.