diff options
author | Nathan Sidwell <nathan@acm.org> | 2021-02-17 10:43:21 -0800 |
---|---|---|
committer | Nathan Sidwell <nathan@acm.org> | 2021-02-17 10:47:00 -0800 |
commit | d8889c99aab4b599aa7ceb7079e69a9766171336 (patch) | |
tree | 9b84f9a3113d2938d448d8ca7c85dfc6b615838e /gcc/tree-inline.c | |
parent | e0139b2a912585496f23c352f0e2c56895f78fbf (diff) | |
download | gcc-d8889c99aab4b599aa7ceb7079e69a9766171336.zip gcc-d8889c99aab4b599aa7ceb7079e69a9766171336.tar.gz gcc-d8889c99aab4b599aa7ceb7079e69a9766171336.tar.bz2 |
c++: Macros need to be GTY-reachable [PR 99023]
I'd missed that macros were allocated from GC storage, and that they can
become unattached from an identifier, and therefore not GC-reachable.
And then bad things happen. Fixed by making the module machinery's
reference vector a GC root.
PR c++/99023
gcc/cp/
* module.cc (struct macro_export): Add GTY markers.
(macro_exports): Likewise, us a va_gc Vector.
gcc/testsuite/
* g++.dg/modules/pr99023_a.H: New.
* g++.dg/modules/pr99023_b.H: New.
Diffstat (limited to 'gcc/tree-inline.c')
0 files changed, 0 insertions, 0 deletions