Fix memory chunk corruption for opts_obstack (PR jit/68446)
commit0da03143c795c3e8f2a56bb9226dc1e47a3cd8b2
authordmalcolm <dmalcolm@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 19 Jan 2016 14:35:16 +0000 (19 14:35 +0000)
committerdmalcolm <dmalcolm@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 19 Jan 2016 14:35:16 +0000 (19 14:35 +0000)
treed79b1923ebfa78c9386a4fa276282c145ef07993
parent885cc3ea9e4ae1f95589a33eb811c4bebb0dc487
Fix memory chunk corruption for opts_obstack (PR jit/68446)

gcc/ChangeLog:
PR jit/68446
* gcc.c (driver::decode_argv): Add call to
init_opts_obstack before init_options_struct.
* opts.c (init_opts_obstack): Remove idempotency.
(init_options_struct): Replace call to init_opts_obstack
with a gcc_assert to verify that it has already been called.
* toplev.c (toplev::main): Add call to init_opts_obstack before
calls to init_options_struct.
(toplev::finalize): Move cleanup of opts_obstack next to
cleanup of save_decoded_options, clearing the latter, and
save_decoded_options_count.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232567 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/gcc.c
gcc/opts.c
gcc/toplev.c