diff options
author | sayle <sayle@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-08-12 01:45:23 +0000 |
---|---|---|
committer | sayle <sayle@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-08-12 01:45:23 +0000 |
commit | 71d5a7589f52d87fc2527887efddccf12663b2a2 (patch) | |
tree | a8d42fe56d075487227b2ad0039a17a20b332091 /gcc/expr.c | |
parent | c9192f9ab6c55bea7984ebb8a042d69130bb31a8 (diff) | |
download | gcc-71d5a7589f52d87fc2527887efddccf12663b2a2.tar.gz |
* expr.c (expand_expr): If an ABS_EXPR has a complex type, abort.
* c-typeck.c (build_unary_op): COMPLEX_TYPE is not a valid
typecode for an ABS_EXPR.
* doc/c-tree.texi: Document ABS_EXPR.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@70349 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/expr.c')
-rw-r--r-- | gcc/expr.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/expr.c b/gcc/expr.c index 47c4f92adac..f2c21c4d82d 100644 --- a/gcc/expr.c +++ b/gcc/expr.c @@ -8475,10 +8475,10 @@ expand_expr (tree exp, rtx target, enum machine_mode tmode, enum expand_modifier if (modifier == EXPAND_STACK_PARM) target = 0; - /* Handle complex values specially. */ + /* ABS_EXPR is not valid for complex arguments. */ if (GET_MODE_CLASS (mode) == MODE_COMPLEX_INT || GET_MODE_CLASS (mode) == MODE_COMPLEX_FLOAT) - return expand_complex_abs (mode, op0, target, unsignedp); + abort (); /* Unsigned abs is simply the operand. Testing here means we don't risk generating incorrect code below. */ |