[flang] Fix crash in HLFIR generation (#118399)
[llvm-project.git] / clang / test / SemaObjCXX / debugger-cast-result-to-id.mm
blobb3de43573023a1184f4517fa5e10dbac14671098
1 // RUN: %clang_cc1 -std=c++11 -fdebugger-support -fdebugger-cast-result-to-id -funknown-anytype -fsyntax-only -verify %s
3 extern __unknown_anytype test0a;
4 extern __unknown_anytype test1a();
5 extern __unknown_anytype test0b;
6 extern __unknown_anytype test1b();
7 extern __unknown_anytype test0c;
8 extern __unknown_anytype test1c();
9 extern __unknown_anytype test0d;
10 extern __unknown_anytype test1d();
11 extern __unknown_anytype test0d;
12 extern __unknown_anytype test1d();
14 @interface A
15 @end
17 namespace rdar9416370 {
18   void test(id x) {
19     if ([x foo]) {} // expected-error {{no known method '-foo'; cast the message send to the method's return type}}
20     [x foo];
21   }
24 @class NSString; // expected-note {{forward declaration of class here}}
25 namespace rdar10988847 {
26   void test() {
27     id s = [NSString stringWithUTF8String:"foo"]; // expected-warning {{receiver 'NSString' is a forward class and corresponding @interface may not exist}}
28   }
31 namespace rdar13338107 {
32   void test() {
33     id x1 = test0a;
34     id x2 = test1a();
35     A *x3 = test0b;
36     A *x4 = test1b();
37     auto x5 = test0c;
38     auto x6 = test1c();
39   }