aboutsummaryrefslogtreecommitdiff
path: root/gcc/expr.c
diff options
context:
space:
mode:
authorRichard Kenner <kenner@vlsi1.ultra.nyu.edu>2000-04-22 10:36:44 +0000
committerRichard Kenner <kenner@gcc.gnu.org>2000-04-22 06:36:44 -0400
commit219fe89837351e72273863b6dc54ca4c5d2ddb6c (patch)
treebee34c63c83ac815152319d14d6b9c07276b3bc4 /gcc/expr.c
parent2b38a1b12dfe4aec0aa3f1d007938bab3fd2946c (diff)
downloadgcc-219fe89837351e72273863b6dc54ca4c5d2ddb6c.zip
gcc-219fe89837351e72273863b6dc54ca4c5d2ddb6c.tar.gz
gcc-219fe89837351e72273863b6dc54ca4c5d2ddb6c.tar.bz2
expr.c (preexpand_calls, [...]): Don't look at TYPE_SIZE of VOID_TYPE.
* expr.c (preexpand_calls, case CALL_EXPR): Don't look at TYPE_SIZE of VOID_TYPE. From-SVN: r33336
Diffstat (limited to 'gcc/expr.c')
-rw-r--r--gcc/expr.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/expr.c b/gcc/expr.c
index aed8233..fa249bb 100644
--- a/gcc/expr.c
+++ b/gcc/expr.c
@@ -9086,7 +9086,8 @@ preexpand_calls (exp)
/* Do nothing if already expanded. */
if (CALL_EXPR_RTL (exp) != 0
/* Do nothing if the call returns a variable-sized object. */
- || TREE_CODE (TYPE_SIZE (TREE_TYPE(exp))) != INTEGER_CST
+ || (TREE_CODE (TREE_TYPE (exp)) != VOID_TYPE
+ && TREE_CODE (TYPE_SIZE (TREE_TYPE (exp))) != INTEGER_CST)
/* Do nothing to built-in functions. */
|| (TREE_CODE (TREE_OPERAND (exp, 0)) == ADDR_EXPR
&& (TREE_CODE (TREE_OPERAND (TREE_OPERAND (exp, 0), 0))