From: Jason Merrill Date: Thu, 20 May 1999 12:17:36 +0000 (+0000) Subject: tree.c (lvalue_p_1): A NOP_EXPR can be an lvalue. X-Git-Tag: releases/libgcj-2.95.0~437 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=06126ca285bb5ec114d8a1c2db4de6c6d8e96d1d;p=thirdparty%2Fgcc.git tree.c (lvalue_p_1): A NOP_EXPR can be an lvalue. * tree.c (lvalue_p_1): A NOP_EXPR can be an lvalue. (build_cplus_new): Make sure that what we return is of the right type. From-SVN: r27063 --- diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index c4bb98b95f78..801aeea9e6d9 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,8 @@ +1999-05-20 Jason Merrill + + * tree.c (lvalue_p_1): A NOP_EXPR can be an lvalue. + (build_cplus_new): Make sure that what we return is of the right type. + 1999-05-20 Mark Mitchell * cp-tree.h (make_ptrmem_cst): New function. diff --git a/gcc/cp/tree.c b/gcc/cp/tree.c index 3f7e5ca213ba..a305cb5ca2c8 100644 --- a/gcc/cp/tree.c +++ b/gcc/cp/tree.c @@ -71,6 +71,7 @@ lvalue_p_1 (ref, treat_class_rvalues_as_lvalues) case WITH_CLEANUP_EXPR: case REALPART_EXPR: case IMAGPART_EXPR: + case NOP_EXPR: return lvalue_p_1 (TREE_OPERAND (ref, 0), treat_class_rvalues_as_lvalues); @@ -193,7 +194,7 @@ build_cplus_new (type, init) tree rval; if (TREE_CODE (init) != CALL_EXPR && TREE_CODE (init) != AGGR_INIT_EXPR) - return init; + return convert (type, init); slot = build (VAR_DECL, type); DECL_ARTIFICIAL (slot) = 1;