diff options
| author | Adrian Prantl <aprantl@apple.com> | 2019-12-05 11:25:46 -0800 |
|---|---|---|
| committer | Adrian Prantl <aprantl@apple.com> | 2019-12-05 12:45:10 -0800 |
| commit | a1a9aa17b4db08937e458cdda85327b9eff307df (patch) | |
| tree | 1228ab2d33e935558a46ce57ae69136e9724b68d /clang/test/SemaObjC | |
| parent | d0b9ed5c490ef10e4af750720a65a6cc6ba41af2 (diff) | |
| download | bcm5719-llvm-a1a9aa17b4db08937e458cdda85327b9eff307df.tar.gz bcm5719-llvm-a1a9aa17b4db08937e458cdda85327b9eff307df.zip | |
Set a source location for Objective-C accessor stubs
even when there is no explicit synthesize statement.
This fixes a regression introduced in https://reviews.llvm.org/D68108
that could lead to missing debug locations in cleanup code in
synthesized Objective-C++ properties.
rdar://57630879
Differential Revision: https://reviews.llvm.org/D71084
Diffstat (limited to 'clang/test/SemaObjC')
| -rw-r--r-- | clang/test/SemaObjC/default-synthesize-sourceloc.m | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/clang/test/SemaObjC/default-synthesize-sourceloc.m b/clang/test/SemaObjC/default-synthesize-sourceloc.m new file mode 100644 index 00000000000..bd549fff17c --- /dev/null +++ b/clang/test/SemaObjC/default-synthesize-sourceloc.m @@ -0,0 +1,23 @@ +// RUN: %clang_cc1 -ast-dump %s | FileCheck %s + +// Test that accessor stubs for default-synthesized ObjC accessors +// have a valid source location. + +__attribute__((objc_root_class)) +@interface NSObject ++ (id)alloc; +@end + +@interface NSString : NSObject +@end + +@interface MyData : NSObject +struct Data { + NSString *name; +}; +@property struct Data data; +@end +// CHECK: ObjCImplementationDecl {{.*}}line:[[@LINE+2]]{{.*}} MyData +// CHECK: ObjCMethodDecl {{.*}}col:23 implicit - setData: 'void' +@implementation MyData +@end |

