]> git.ipfire.org Git - thirdparty/gcc.git/commit
Fix obstack use-after-free problems in C frontend, PR69522
authorBernd Schmidt <bernds@redhat.com>
Fri, 12 Feb 2016 01:38:06 +0000 (01:38 +0000)
committerBernd Schmidt <bernds@gcc.gnu.org>
Fri, 12 Feb 2016 01:38:06 +0000 (01:38 +0000)
commit16595a1f286b9f421000a25866f465bd45a24538
tree91eedf26ad1b6621eed02ddc3ccecc0614c40a1a
parent38d795d27c34ebc70a944009d82d20415ec81a64
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
gcc/c/ChangeLog
gcc/c/c-parser.c
gcc/c/c-tree.h
gcc/c/c-typeck.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/pr69522.c [new file with mode: 0644]