diff options
author | Bernd Schmidt <bernds@redhat.com> | 2016-02-12 01:38:06 +0000 |
---|---|---|
committer | Bernd Schmidt <bernds@gcc.gnu.org> | 2016-02-12 01:38:06 +0000 |
commit | 16595a1f286b9f421000a25866f465bd45a24538 (patch) | |
tree | 91eedf26ad1b6621eed02ddc3ccecc0614c40a1a /gcc/c/c-decl.c | |
parent | 38d795d27c34ebc70a944009d82d20415ec81a64 (diff) | |
download | gcc-16595a1f286b9f421000a25866f465bd45a24538.zip gcc-16595a1f286b9f421000a25866f465bd45a24538.tar.gz gcc-16595a1f286b9f421000a25866f465bd45a24538.tar.bz2 |
Fix obstack use-after-free problems in C frontend, PR69522
c/
PR c/69522
* c-parser.c (c_parser_braced_init): New arg outer_obstack. All
callers changed. If nested_p is true, use it to call
finish_implicit_inits.
* c-tree.h (finish_implicit_inits): Declare.
* c-typeck.c (finish_implicit_inits): New function. Move code
from ...
(push_init_level): ... here.
(set_designator, process_init_element): Call finish_implicit_inits.
testsuite/
PR c/69522
gcc.dg/pr69522.c: New test.
From-SVN: r233366
Diffstat (limited to 'gcc/c/c-decl.c')
0 files changed, 0 insertions, 0 deletions