aboutsummaryrefslogtreecommitdiff
path: root/gcc/cfgexpand.c
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@adacore.com>2018-10-19 07:17:20 +0000
committerEric Botcazou <ebotcazou@gcc.gnu.org>2018-10-19 07:17:20 +0000
commitba9a8625b0a7eddb237d140e89ddb78afd1e3539 (patch)
tree5de81f3816c8f5b37652cdeee06c9657d98e97e1 /gcc/cfgexpand.c
parent079c81d010e3303c8fdbc4669bf3907fe7a37052 (diff)
downloadgcc-ba9a8625b0a7eddb237d140e89ddb78afd1e3539.zip
gcc-ba9a8625b0a7eddb237d140e89ddb78afd1e3539.tar.gz
gcc-ba9a8625b0a7eddb237d140e89ddb78afd1e3539.tar.bz2
cfgexpand.c (expand_one_var): Use specific wording in error message for non-local frame variables.
* cfgexpand.c (expand_one_var): Use specific wording in error message for non-local frame variables. * stor-layout.c (layout_decl): Do not issue a warning for them. From-SVN: r265305
Diffstat (limited to 'gcc/cfgexpand.c')
-rw-r--r--gcc/cfgexpand.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/gcc/cfgexpand.c b/gcc/cfgexpand.c
index 35ca276..9d1eab6 100644
--- a/gcc/cfgexpand.c
+++ b/gcc/cfgexpand.c
@@ -1674,7 +1674,12 @@ expand_one_var (tree var, bool toplevel, bool really_expand)
/* Reject variables which cover more than half of the address-space. */
if (really_expand)
{
- error ("size of variable %q+D is too large", var);
+ if (DECL_NONLOCAL_FRAME (var))
+ error_at (DECL_SOURCE_LOCATION (current_function_decl),
+ "total size of local objects is too large");
+ else
+ error_at (DECL_SOURCE_LOCATION (var),
+ "size of variable %q+D is too large", var);
expand_one_error_var (var);
}
}