diff options
author | Chris Lattner <sabre@nondot.org> | 2009-02-23 22:00:08 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2009-02-23 22:00:08 +0000 |
commit | d13b8b55caaaf968b735bf82e49047d45e73c50b (patch) | |
tree | 4c0aa626af7427d6122e405976dc07bb047b2399 /clang/test/SemaObjC/interface-1.m | |
parent | 12bbe9e144ac48f8c6c7fa59fbe90086dffa05a4 (diff) | |
download | bcm5719-llvm-d13b8b55caaaf968b735bf82e49047d45e73c50b.tar.gz bcm5719-llvm-d13b8b55caaaf968b735bf82e49047d45e73c50b.zip |
fix rdar://6611778, a redefinition of an interface was causing an
assertion when the ivars and method list was reset into the existing
interface. To fix this, mark decls as invalid when they are redefined,
and don't insert ivars/methods into invalid decls.
llvm-svn: 65340
Diffstat (limited to 'clang/test/SemaObjC/interface-1.m')
-rw-r--r-- | clang/test/SemaObjC/interface-1.m | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/clang/test/SemaObjC/interface-1.m b/clang/test/SemaObjC/interface-1.m index ea770505054..b974b39a3a8 100644 --- a/clang/test/SemaObjC/interface-1.m +++ b/clang/test/SemaObjC/interface-1.m @@ -25,3 +25,13 @@ void test2() { ++c; } + +// rdar://6611778 +@interface FOO // expected-note {{previous definition is here}} +- (void)method; +@end + +@interface FOO // expected-error {{duplicate interface definition for class 'FOO'}} +- (void)method2; +@end + |