From: Richard Henderson Date: Fri, 26 Apr 2002 21:56:55 +0000 (-0700) Subject: c-typeck.c (build_unary_op): Invoke non_lvalue. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=ae5d234e11b21b1aab2dc4a9e79f8a9d7831ef69;p=gcc.git c-typeck.c (build_unary_op): Invoke non_lvalue. * c-typeck.c (build_unary_op) [CONVERT_EXPR]: Invoke non_lvalue. * gcc.dg/lvalue1.c: New. From-SVN: r52812 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 05394caf8ed..6a32a2106af 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2002-04-26 Richard Henderson + + PR c/5225 + * c-typeck.c (build_unary_op) [CONVERT_EXPR]: Invoke non_lvalue. + 2002-04-26 Mark Mitchell PR bootstrap/6445 diff --git a/gcc/c-typeck.c b/gcc/c-typeck.c index f8838019557..7e91d4fc692 100644 --- a/gcc/c-typeck.c +++ b/gcc/c-typeck.c @@ -2759,6 +2759,7 @@ build_unary_op (code, xarg, flag) } else if (!noconvert) arg = default_conversion (arg); + arg = non_lvalue (arg); break; case NEGATE_EXPR: diff --git a/gcc/testsuite/gcc.dg/lvalue1.c b/gcc/testsuite/gcc.dg/lvalue1.c new file mode 100644 index 00000000000..7e21608ab36 --- /dev/null +++ b/gcc/testsuite/gcc.dg/lvalue1.c @@ -0,0 +1,9 @@ +/* PR c/5225 */ +/* { dg-do compile } */ + +int main() +{ + int i; + +i = 1; /* { dg-error "invalid lvalue in assignment" } */ + return 0; +}