LTO bootstrapped on x86_64-unknown-linux-gnu, testing in progress. (most "gross" are still TS_LIST having a type and TS_VEC having type and chain, but that's been hard to fix with the C++ FE in place)
Richard. 2017-01-11 Richard Biener <rguent...@suse.de> * tree.c (initialize_tree_contains_struct): Make TS_OPTIMIZATION and TS_TARGET_OPTION directly derive from TS_BASE. Index: gcc/tree.c =================================================================== --- gcc/tree.c (revision 244309) +++ gcc/tree.c (working copy) @@ -508,6 +508,8 @@ initialize_tree_contains_struct (void) { case TS_TYPED: case TS_BLOCK: + case TS_OPTIMIZATION: + case TS_TARGET_OPTION: MARK_TS_BASE (code); break; @@ -532,8 +534,6 @@ initialize_tree_contains_struct (void) case TS_VEC: case TS_BINFO: case TS_OMP_CLAUSE: - case TS_OPTIMIZATION: - case TS_TARGET_OPTION: MARK_TS_COMMON (code); break;