aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Kenner <kenner@gcc.gnu.org>1994-10-20 09:41:46 -0400
committerRichard Kenner <kenner@gcc.gnu.org>1994-10-20 09:41:46 -0400
commite5852cffc21b02142c084c451360688bf3bbb019 (patch)
treec7767b76164a5ed0626a49573c473e2e43a8b90d
parent90d326bda21dc222166c937bb01c68945ef10382 (diff)
downloadgcc-e5852cffc21b02142c084c451360688bf3bbb019.zip
gcc-e5852cffc21b02142c084c451360688bf3bbb019.tar.gz
gcc-e5852cffc21b02142c084c451360688bf3bbb019.tar.bz2
(variable_size): Return SIZE if it contains a PLACEHOLDER_EXPR.
From-SVN: r8318
-rw-r--r--gcc/stor-layout.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/stor-layout.c b/gcc/stor-layout.c
index 9fdc651..834e96d 100644
--- a/gcc/stor-layout.c
+++ b/gcc/stor-layout.c
@@ -88,8 +88,8 @@ variable_size (size)
{
/* If the language-processor is to take responsibility for variable-sized
items (e.g., languages which have elaboration procedures like Ada),
- just return SIZE unchanged. */
- if (global_bindings_p () < 0)
+ just return SIZE unchanged. Likewise for self-referential sizes. */
+ if (global_bindings_p () < 0 || contains_placeholder_p (size))
return size;
size = save_expr (size);