Several improvements from Doug Gregor related to default
argument handling. I'll fix up the c89 (void) thing next.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49459 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/test/Sema/default2.cpp b/test/Sema/default2.cpp
index 0fe04ab..d72f550 100644
--- a/test/Sema/default2.cpp
+++ b/test/Sema/default2.cpp
@@ -10,3 +10,18 @@
f(0, 1);
f(0, 1, 2);
}
+
+
+int f1(int i, int i, int j) { // expected-error {{redefinition of parameter 'i'}}
+ i = 17;
+ return j;
+}
+
+int x;
+void g(int x, int y = x); // expected-error {{default argument references parameter 'x'}}
+
+void h()
+{
+ int i;
+ extern void h2(int x = sizeof(i)); // expected-error {{default argument references local variable 'i' of enclosing function}}
+}