diff options
author | Nathan Sidwell <nathan@acm.org> | 2021-04-02 06:28:29 -0700 |
---|---|---|
committer | Nathan Sidwell <nathan@acm.org> | 2021-04-02 09:08:28 -0700 |
commit | f4e05eebd6aac6118cbd9e0a04c011b6ed682826 (patch) | |
tree | e82ecaf9f225b216826cd364e56cd899ea7001cf /gcc/d/dmd/cppmangle.c | |
parent | c84491827990e4f2746442c23294fc17923b265d (diff) | |
download | gcc-f4e05eebd6aac6118cbd9e0a04c011b6ed682826.zip gcc-f4e05eebd6aac6118cbd9e0a04c011b6ed682826.tar.gz gcc-f4e05eebd6aac6118cbd9e0a04c011b6ed682826.tar.bz2 |
c++: header unit purview [PR 99283]
This case occurs due to some equivocation about module_purview.
Header-unit building is treated as a module-purview, but we should not
treat entities imported from that as module purview. (header units
were not a thing when I started). The testcase didn't understand we
had a local textual definition, but it was (incorrectly) marked as
module-purview, because we'd read in a declaration from a header unit
too.
gcc/cp/
* cp-tree.h (lang_decl_base): Correct module flag comment.
* module.cc (trees_in::assert_definition): Break out
not_tmpl var.
(trees_out::lang_decl_bools): Do not write purview for header units.
gcc/testsuite/
* g++.dg/modules/pr99283-6_d.H: New.
* g++.dg/modules/pr99283-7-swap.h: New.
* g++.dg/modules/pr99283-7-traits.h: New.
* g++.dg/modules/pr99283-7_a.H: New.
* g++.dg/modules/pr99283-7_b.H: New.
* g++.dg/modules/pr99283-7_c.C: New.
* g++.dg/modules/pr99283-7_d.H: New.
Diffstat (limited to 'gcc/d/dmd/cppmangle.c')
0 files changed, 0 insertions, 0 deletions