aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite
diff options
context:
space:
mode:
authorMartin Uecker <muecker@gwdg.de>2020-12-16 23:47:52 +0100
committerMartin Uecker <muecker@gwdg.de>2020-12-16 23:51:25 +0100
commit58a45ce44a9acf3d15fada265d2a391a8e1bc960 (patch)
tree69fbd5b87d917a812ff0d60a679afcf7d34d8d34 /gcc/testsuite
parentec13758ed41936bf803640f0dd8c259c034fe4b9 (diff)
downloadgcc-58a45ce44a9acf3d15fada265d2a391a8e1bc960.zip
gcc-58a45ce44a9acf3d15fada265d2a391a8e1bc960.tar.gz
gcc-58a45ce44a9acf3d15fada265d2a391a8e1bc960.tar.bz2
C: Drop qualifiers of assignment expressions. [PR98047]
ISO C17 6.5.15.1 specifies that the result is the type the LHS would have after lvalue conversion. 2020-12-16 Martin Uecker <muecker@gwdg.de> gcc/c/ PR c/98047 * c-typeck.c (build_modify_expr): Drop qualifiers. gcc/testsuite/ PR c/98047 * gcc.dg/qual-assign-7.c: New test.
Diffstat (limited to 'gcc/testsuite')
-rw-r--r--gcc/testsuite/gcc.dg/qual-assign-7.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.dg/qual-assign-7.c b/gcc/testsuite/gcc.dg/qual-assign-7.c
new file mode 100644
index 0000000..3e064e8
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/qual-assign-7.c
@@ -0,0 +1,18 @@
+/* test that assignment drops qualifiers, Bug 98047 */
+/* { dg-do compile } */
+/* { dg-options "" } */
+
+
+volatile int jv;
+extern int j;
+extern typeof(jv = 1) j;
+
+_Atomic int ja;
+extern typeof(ja = 1) j;
+
+int * __restrict pa;
+extern int *p;
+extern typeof(pa = 0) p;
+
+
+