diff options
Diffstat (limited to 'gcc/function.c')
-rw-r--r-- | gcc/function.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/gcc/function.c b/gcc/function.c index 142cdae..dee303c 100644 --- a/gcc/function.c +++ b/gcc/function.c @@ -242,8 +242,15 @@ frame_offset_overflow (poly_int64 offset, tree func) if (!coeffs_in_range_p (size, 0U, limit)) { - error_at (DECL_SOURCE_LOCATION (func), - "total size of local objects too large"); + unsigned HOST_WIDE_INT hwisize; + if (size.is_constant (&hwisize)) + error_at (DECL_SOURCE_LOCATION (func), + "total size of local objects %wu exceeds maximum %wu", + hwisize, limit); + else + error_at (DECL_SOURCE_LOCATION (func), + "total size of local objects exceeds maximum %wu", + limit); return true; } |