summaryrefslogtreecommitdiffstats
path: root/test/ASTMerge/interface
diff options
context:
space:
mode:
Diffstat (limited to 'test/ASTMerge/interface')
-rw-r--r--test/ASTMerge/interface/Inputs/interface1.m105
-rw-r--r--test/ASTMerge/interface/Inputs/interface2.m100
-rw-r--r--test/ASTMerge/interface/test.m22
3 files changed, 0 insertions, 227 deletions
diff --git a/test/ASTMerge/interface/Inputs/interface1.m b/test/ASTMerge/interface/Inputs/interface1.m
deleted file mode 100644
index 6192150089..0000000000
--- a/test/ASTMerge/interface/Inputs/interface1.m
+++ /dev/null
@@ -1,105 +0,0 @@
-// Matches
-@interface I1 {
- int ivar1;
-}
-@end
-
-// Matches
-@interface I2 : I1 {
- float ivar2;
-}
-@end
-
-// Ivar mismatch
-@interface I3 {
- int ivar1;
- int ivar2;
-}
-@end
-
-// Superclass mismatch
-@interface I4 : I2 {
-}
-@end
-
-// Methods match
-@interface I5
-- (int)foo;
-+ (float)bar;
-@end
-
-// Method mismatch
-@interface I6
-- (int)foo;
-+ (int)foo;
-@end
-
-// Method mismatch
-@interface I7
-- (int)foo;
-+ (int)bar:(int)x;
-@end
-
-// Method mismatch
-@interface I8
-- (int)foo;
-+ (int)bar:(float)x;
-@end
-
-// Matching protocol
-@protocol P0
-+ (int)foo;
-- (int)bar:(float)x;
-@end
-
-// Protocol with mismatching method
-@protocol P1
-+ (int)foo;
-- (int)bar:(float)x;
-@end
-
-// Interface with protocol
-@interface I9 <P0>
-+ (int)foo;
-- (int)bar:(float)x;
-@end
-
-// Protocol with protocol
-@protocol P2 <P0>
-- (float)wibble:(int)a1 second:(int)a2;
-@end
-
-// Forward-declared interfaces
-@class I10, I11;
-@interface I12
-@end
-
-// Forward-declared protocols
-@protocol P3, P5;
-@protocol P4
-- (double)honk:(int)a;
-@end
-
-// Interface with implementation
-@interface I13
-@end
-
-@implementation I13
-@end
-
-@interface I13a
-@end
-
-@implementation I13a
-@end
-
-// Implementation by itself
-@implementation I14 : I12
-@end
-
-@implementation I15 : I12
-@end
-
-@interface ImportSelectorSLoc { }
--(int)addInt:(int)a toInt:(int)b moduloInt:(int)c; // don't crash here
-@end
diff --git a/test/ASTMerge/interface/Inputs/interface2.m b/test/ASTMerge/interface/Inputs/interface2.m
deleted file mode 100644
index 2133bd1381..0000000000
--- a/test/ASTMerge/interface/Inputs/interface2.m
+++ /dev/null
@@ -1,100 +0,0 @@
-// Matches
-@interface I1 {
- int ivar1;
-}
-@end
-
-// Matches
-@interface I2 : I1 {
- float ivar2;
-}
-@end
-
-// Ivar mismatch
-@interface I3 {
- int ivar1;
- float ivar2;
-}
-@end
-
-// Superclass mismatch
-@interface I4 : I1 {
-}
-@end
-
-// Methods match
-@interface I5
-+ (float)bar;
-- (int)foo;
-@end
-
-// Method mismatch
-@interface I6
-+ (float)foo;
-@end
-
-// Method mismatch
-@interface I7
-- (int)foo;
-+ (int)bar:(float)x;
-@end
-
-// Method mismatch
-@interface I8
-- (int)foo;
-+ (int)bar:(float)x, ...;
-@end
-
-// Matching protocol
-@protocol P0
-+ (int)foo;
-- (int)bar:(float)x;
-@end
-
-// Protocol with mismatching method
-@protocol P1
-+ (int)foo;
-- (int)bar:(double)x;
-@end
-
-// Interface with protocol
-@interface I9 <P0>
-+ (int)foo;
-- (int)bar:(float)x;
-@end
-
-// Protocol with protocol
-@protocol P2 <P0>
-- (float)wibble:(int)a1 second:(int)a2;
-@end
-
-// Forward-declared interface
-@class I10; @interface I12 @end
-@interface I11
-@end
-
-// Forward-declared protocols
-@protocol P3, P4;
-@protocol P5
-- (double)honk:(int)a;
-@end
-
-// Interface with implementation
-@interface I13
-@end
-
-@implementation I13
-@end
-
-@interface I13b
-@end
-
-@implementation I13b
-@end
-
-// Implementation by itself
-@implementation I14 : I12
-@end
-
-@implementation I15 : I11
-@end
diff --git a/test/ASTMerge/interface/test.m b/test/ASTMerge/interface/test.m
deleted file mode 100644
index 8ba5d73753..0000000000
--- a/test/ASTMerge/interface/test.m
+++ /dev/null
@@ -1,22 +0,0 @@
-// RUN: %clang_cc1 -emit-pch -o %t.1.ast %S/Inputs/interface1.m
-// RUN: %clang_cc1 -emit-pch -o %t.2.ast %S/Inputs/interface2.m
-// RUN: not %clang_cc1 -ast-merge %t.1.ast -ast-merge %t.2.ast -fsyntax-only %s 2>&1 | FileCheck %s
-
-// CHECK: interface2.m:16:9: error: instance variable 'ivar2' declared with incompatible types in different translation units ('float' vs. 'int')
-// CHECK: interface1.m:16:7: note: declared here with type 'int'
-// CHECK: interface1.m:21:12: error: class 'I4' has incompatible superclasses
-// CHECK: interface1.m:21:17: note: inherits from superclass 'I2' here
-// CHECK: interface2.m:21:17: note: inherits from superclass 'I1' here
-// CHECK: interface2.m:33:1: error: class method 'foo' has incompatible result types in different translation units ('float' vs. 'int')
-// CHECK: interface1.m:34:1: note: class method 'foo' also declared here
-// CHECK: interface2.m:39:19: error: class method 'bar:' has a parameter with a different types in different translation units ('float' vs. 'int')
-// CHECK: interface1.m:40:17: note: declared here with type 'int'
-// CHECK: interface2.m:45:1: error: class method 'bar:' is variadic in one translation unit and not variadic in another
-// CHECK: interface1.m:46:1: note: class method 'bar:' also declared here
-// CHECK: interface2.m:57:20: error: instance method 'bar:' has a parameter with a different types in different translation units ('double' vs. 'float')
-// CHECK: interface1.m:58:19: note: declared here with type 'float'
-// CHECK: interface1.m:100:17: error: class 'I15' has incompatible superclasses
-// CHECK: interface1.m:100:17: note: inherits from superclass 'I12' here
-// CHECK: interface2.m:99:17: note: inherits from superclass 'I11' here
-// CHECK: 8 errors generated
-