Index: var-tracking.c =================================================================== --- var-tracking.c (revision 248140) +++ var-tracking.c (working copy) @@ -5220,8 +5220,9 @@ track_expr_p (tree expr, bool need_rtl) if (decl_rtl && MEM_P (decl_rtl)) { /* Do not track structures and arrays. */ - if (GET_MODE (decl_rtl) == BLKmode - || AGGREGATE_TYPE_P (TREE_TYPE (realdecl))) + if ((GET_MODE (decl_rtl) == BLKmode + || AGGREGATE_TYPE_P (TREE_TYPE (realdecl))) + && !tracked_record_parameter_p (realdecl)) return 0; if (MEM_SIZE_KNOWN_P (decl_rtl) && MEM_SIZE (decl_rtl) > MAX_VAR_PARTS)