typeof-2.c: Add checks for non-atomic types.
authorSebastian Huber <sebastian.huber@embedded-brains.de>
Fri, 9 Jan 2015 13:26:26 +0000 (13:26 +0000)
committerSebastian Huber <sh@gcc.gnu.org>
Fri, 9 Jan 2015 13:26:26 +0000 (13:26 +0000)
gcc/testsuite/gcc.dg/typeof-2.c

gcc/testsuite/ChangeLog

* gcc.dg/typeof-2.c: Add checks for non-atomic types.

From-SVN: r219381

gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/typeof-2.c

index c962149b1bf3d2fce4b069a4c9bc190a61faa208..a529f19205936730938f7f0fb7ab44141848fce3 100644 (file)
@@ -1,3 +1,7 @@
+2015-01-09  Sebastian Huber  <sebastian.huber@embedded-brains.de>
+
+       * gcc.dg/typeof-2.c: Add checks for non-atomic types.
+
 2015-01-09  Richard Biener  <rguenther@suse.de>
 
        PR tree-optimization/64410
index e9169003a9b8638fde90257b373dd2ac2c542c3b..21ef5b0b865e661de8a4bb9364fdf9ccbea7c836 100644 (file)
@@ -2,6 +2,8 @@
 /* { dg-do compile } */
 /* { dg-options "-std=c11" } */
 
+/* Check that the qualifiers are discarded for atomic types. */
+
 extern int i;
 
 extern int * p;
@@ -26,3 +28,32 @@ void f(void)
   __auto_type ari = ri;
   int **pari = &ari;
 }
+
+/* Check that the qualifiers are preserved for non-atomic types. */
+
+extern int const j;
+
+extern int volatile k;
+
+extern int * restrict q;
+
+extern int const nci;
+extern __typeof (nci) j;
+
+extern int volatile nvi;
+extern __typeof (nvi) k;
+
+extern int * restrict nri;
+extern __typeof (nri) q;
+
+void g(void)
+{
+  __auto_type aci = nci;
+  int const *paci = &aci;
+
+  __auto_type avi = nvi;
+  int volatile *pavi = &avi;
+
+  __auto_type ari = nri;
+  int * restrict *pari = &ari;
+}