lvalue-2.c
来自「linux下编程用 编译软件」· C语言 代码 · 共 49 行
C
49 行
/* Test diagnostic messages for invalid lvalues and non-modifiable lvalues. *//* Origin: Joseph Myers <jsm@polyomino.org.uk> *//* { dg-do compile } *//* { dg-options "" } */int a, b;voidf0 (void){ (a+b) = 1; /* { dg-error "error: invalid lvalue in assignment" } */ (a+b)++; /* { dg-error "error: invalid lvalue in increment" } */ ++(a+b); /* { dg-error "error: invalid lvalue in increment" } */ (a+b)--; /* { dg-error "error: invalid lvalue in decrement" } */ --(a+b); /* { dg-error "error: invalid lvalue in decrement" } */ &(a+b); /* { dg-error "error: invalid lvalue in unary '&'" } */}const int c;const struct { int x; } d;struct { const int x; } e;const int *f;voidf1 (void){ c = 1; /* { dg-error "error: assignment of read-only variable 'c'" } */ d.x = 1; /* { dg-error "error: assignment of read-only variable 'd'" } */ e.x = 1; /* { dg-error "error: assignment of read-only member 'x'" } */ *f = 1; /* { dg-error "error: assignment of read-only location" } */ c++; /* { dg-error "error: increment of read-only variable 'c'" } */ d.x++; /* { dg-error "error: increment of read-only variable 'd'" } */ e.x++; /* { dg-error "error: increment of read-only member 'x'" } */ (*f)++; /* { dg-error "error: increment of read-only location" } */ ++c; /* { dg-error "error: increment of read-only variable 'c'" } */ ++d.x; /* { dg-error "error: increment of read-only variable 'd'" } */ ++e.x; /* { dg-error "error: increment of read-only member 'x'" } */ ++(*f); /* { dg-error "error: increment of read-only location" } */ c--; /* { dg-error "error: decrement of read-only variable 'c'" } */ d.x--; /* { dg-error "error: decrement of read-only variable 'd'" } */ e.x--; /* { dg-error "error: decrement of read-only member 'x'" } */ (*f)--; /* { dg-error "error: decrement of read-only location" } */ --c; /* { dg-error "error: decrement of read-only variable 'c'" } */ --d.x; /* { dg-error "error: decrement of read-only variable 'd'" } */ --e.x; /* { dg-error "error: decrement of read-only member 'x'" } */ --(*f); /* { dg-error "error: decrement of read-only location" } */}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?