summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.old-deja/g++.benjamin/warn02.C
diff options
context:
space:
mode:
authorYamaArashi <shadow962@live.com>2016-01-06 01:47:28 -0800
committerYamaArashi <shadow962@live.com>2016-01-06 01:47:28 -0800
commitbe8b04496302184c6e8f04d6179f9c3afc50aeb6 (patch)
tree726e2468c0c07add773c0dbd86ab6386844259ae /gcc/testsuite/g++.old-deja/g++.benjamin/warn02.C
initial commit
Diffstat (limited to 'gcc/testsuite/g++.old-deja/g++.benjamin/warn02.C')
-rwxr-xr-xgcc/testsuite/g++.old-deja/g++.benjamin/warn02.C54
1 files changed, 54 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/warn02.C b/gcc/testsuite/g++.old-deja/g++.benjamin/warn02.C
new file mode 100755
index 0000000..e63d43c
--- /dev/null
+++ b/gcc/testsuite/g++.old-deja/g++.benjamin/warn02.C
@@ -0,0 +1,54 @@
+// 980413 bkoz
+// from g++/15307, tests for -Wredundant-decls
+// for friend functions and functions
+// Build don't link:
+//Special g++ Options: -Wredundant-decls
+
+
+extern int foo(const char *);
+
+class A
+{
+ friend int foo(const char *);
+ int a;
+};
+
+class B
+{
+ friend int foo(const char *);
+ int foo2() {return b;}
+ int b;
+};
+
+class C
+{
+ friend int foo(const char *);
+ friend int foo(const char *); // WARNING -
+ int foo2() {return b;}
+ int b;
+};
+
+class D
+{
+public:
+ int foo2() {return b;}
+ int foo2() {return b;} // ERROR -
+ int b;
+};
+
+class E
+{
+public:
+ int foo2();
+ int foo2(); // ERROR -
+ int b;
+};
+
+extern int foo3(const char *); // WARNING -
+extern int foo3(const char *); // WARNING -
+
+
+
+
+
+