[clang] Implement lifetime analysis for lifetime_capture_by(X) (#115921)
[llvm-project.git] / clang / test / SemaObjC / transparent-union.m
blobbda0a54bb63f9069949dbad8a173810a078fb1dc
1 // RUN: %clang_cc1  -fsyntax-only -verify -Wno-objc-root-class %s
2 // expected-no-diagnostics
4 typedef union {
5  struct xx_object_s *_do;
6  struct xx_continuation_s *_dc;
7  struct xx_queue_s *_dq;
8  struct xx_queue_attr_s *_dqa;
9  struct xx_group_s *_dg;
10  struct xx_source_s *_ds;
11  struct xx_source_attr_s *_dsa;
12  struct xx_semaphore_s *_dsema;
13 } xx_object_t __attribute__((transparent_union));
15 @interface INTF
16 - (void) doSomething : (xx_object_t) xxObject;
17 - (void)testMeth;
18 @end
20 @implementation INTF
21 - (void) doSomething : (xx_object_t) xxObject {}
22 - (void)testMeth { struct xx_queue_s *sq; [self doSomething:sq ]; }
23 @end