diff options
author | obrien <obrien@FreeBSD.org> | 2002-05-09 20:02:13 +0000 |
---|---|---|
committer | obrien <obrien@FreeBSD.org> | 2002-05-09 20:02:13 +0000 |
commit | c8f5fc7032940ad6633f932ac40cade82ec4d0cc (patch) | |
tree | 29a0f0a6c79a69ecc64f612947a0fe5904311713 /contrib/gcc/cp/cvt.c | |
parent | c9ab9ae440a8066b2c2b85b157b1fdadcf09916a (diff) | |
download | FreeBSD-src-c8f5fc7032940ad6633f932ac40cade82ec4d0cc.zip FreeBSD-src-c8f5fc7032940ad6633f932ac40cade82ec4d0cc.tar.gz |
Gcc 3.1.0 pre-release from the FSF anoncvs repo on 9-May-2002 15:57:15 EDT.
Diffstat (limited to 'contrib/gcc/cp/cvt.c')
-rw-r--r-- | contrib/gcc/cp/cvt.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/contrib/gcc/cp/cvt.c b/contrib/gcc/cp/cvt.c index 6029e84..41cf21f 100644 --- a/contrib/gcc/cp/cvt.c +++ b/contrib/gcc/cp/cvt.c @@ -267,7 +267,7 @@ cp_convert_to_pointer (type, expr, force) } if (type_unknown_p (expr)) - return instantiate_type (type, expr, itf_complain); + return instantiate_type (type, expr, tf_error | tf_warning); error ("cannot convert `%E' from type `%T' to type `%T'", expr, intype, type); @@ -478,7 +478,7 @@ convert_to_reference (reftype, expr, convtype, flags, decl) { expr = instantiate_type (type, expr, (flags & LOOKUP_COMPLAIN) - ? itf_complain : itf_none); + ? tf_error | tf_warning : tf_none); if (expr == error_mark_node) return error_mark_node; @@ -836,7 +836,7 @@ convert_to_void (expr, implicit) tree new_op1 = convert_to_void (op1, implicit); tree new_op2 = convert_to_void (op2, implicit); - expr = build (COND_EXPR, void_type_node, + expr = build (COND_EXPR, TREE_TYPE (new_op1), TREE_OPERAND (expr, 0), new_op1, new_op2); break; } @@ -852,6 +852,7 @@ convert_to_void (expr, implicit) tree t = build (COMPOUND_EXPR, TREE_TYPE (new_op1), TREE_OPERAND (expr, 0), new_op1); TREE_SIDE_EFFECTS (t) = TREE_SIDE_EFFECTS (expr); + TREE_NO_UNUSED_WARNING (t) = TREE_NO_UNUSED_WARNING (expr); expr = t; } |