re PR lto/89692 (ICE in streamer_write_chain, at tree-streamer-out.c:506)
authorJan Hubicka <hubicka@ucw.cz>
Thu, 21 Mar 2019 22:04:29 +0000 (23:04 +0100)
committerJakub Jelinek <jakub@gcc.gnu.org>
Thu, 21 Mar 2019 22:04:29 +0000 (23:04 +0100)
commit774856e3fbc2b1b6ab67470a7d6fc7cb7b4be546
tree7061da68fd12dcff4b6b50141a6b8cff428ef595
parent8c8b42cf72f677e004909b2ab3b3f12353fb94d5
re PR lto/89692 (ICE in streamer_write_chain, at tree-streamer-out.c:506)

PR lto/89692
* tree.c (fld_type_variant, fld_incomplete_type_of,
fld_process_array_type): Call fld->pset.add and don't call
add_tree_to_fld_list if it returns true.
(free_lang_data_in_type): Similarly with self-recursive call.  Purge
non-marked types from TYPE_NEXT_VARIANT list.
(find_decls_types_r): Call fld_worklist_push for TYPE_CANONICAL (t).

* g++.dg/other/pr89692.C: New test.

From-SVN: r269862
gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/other/pr89692.C [new file with mode: 0644]
gcc/tree.c