aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/gcc.dg/qual-return-3.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc-4.9/gcc/testsuite/gcc.dg/qual-return-3.c')
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.dg/qual-return-3.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/gcc-4.9/gcc/testsuite/gcc.dg/qual-return-3.c b/gcc-4.9/gcc/testsuite/gcc.dg/qual-return-3.c
new file mode 100644
index 000000000..e65f86d54
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.dg/qual-return-3.c
@@ -0,0 +1,16 @@
+/* Test for warnings for qualified function return types. Bug 15052
+ from Olatunji Ruwase (tjruwase at stanfordalumni.org): qualifiers
+ should not be lost when merging declarations. */
+
+/* Origin: Joseph Myers <jsm@polyomino.org.uk> */
+/* { dg-do compile } */
+/* { dg-options "" } */
+
+int foo (); /* { dg-message "note: previous declaration" "different qualifiers" } */
+const int foo () { return 0; } /* { dg-error "conflicting types" "different qualifiers" } */
+
+void bar (void);
+volatile void bar () { } /* { dg-warning "qualified|volatile" "different qualifiers" } */
+
+volatile void baz (void);
+void baz () { } /* { dg-warning "not compatible" "different qualifiers" } */