diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 73f6be6d390..d2db83475a7 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2015-05-09 Jan Hubicka + + Patch by Richard Biener + * coverage.c (coverage_obj_init): Delay building of type variant + until the type is finished. + 2015-05-09 Jan Hubicka * ipa-devirt.c (warn_types_mismatch): Do not ICE when warning about diff --git a/gcc/coverage.c b/gcc/coverage.c index e1d81ff2949..ff7249acaa7 100644 --- a/gcc/coverage.c +++ b/gcc/coverage.c @@ -1141,9 +1141,10 @@ coverage_obj_init (void) /* Build the info and fn_info types. These are mutually recursive. */ gcov_info_type = lang_hooks.types.make_type (RECORD_TYPE); gcov_fn_info_type = lang_hooks.types.make_type (RECORD_TYPE); + build_fn_info_type (gcov_fn_info_type, n_counters, gcov_info_type); + gcov_info_type = lang_hooks.types.make_type (RECORD_TYPE); gcov_fn_info_ptr_type = build_pointer_type (build_qualified_type (gcov_fn_info_type, TYPE_QUAL_CONST)); - build_fn_info_type (gcov_fn_info_type, n_counters, gcov_info_type); build_info_type (gcov_info_type, gcov_fn_info_ptr_type); /* Build the gcov info var, this is referred to in its own