Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / clang / test / SemaObjC / gc-attributes.m
blob1b81cafd35a7d96b0c44387df5f523d3d858a052
1 // RUN: %clang_cc1 -triple x86_64-apple-darwin10 -fobjc-gc -fsyntax-only -verify %s
3 @interface A
4 @end
6 void f0(__strong A**); // expected-note{{passing argument to parameter here}}
8 void test_f0(void) {
9   A *a;
10   static __weak A *a2;
11   f0(&a);
12   f0(&a2); // expected-warning{{passing 'A *__weak *' to parameter of type 'A *__strong *' discards qualifiers}}
15 void f1(__weak A**); // expected-note{{passing argument to parameter here}}
17 void test_f1(void) {
18   A *a;
19   __strong A *a2;
20   f1(&a);
21   f1(&a2); // expected-warning{{passing 'A *__strong *' to parameter of type 'A *__weak *' discards qualifiers}}
24 // These qualifiers should silently expand to nothing in GC mode.
25 void test_unsafe_unretained(__unsafe_unretained id *x) {}
26 void test_autoreleasing(__autoreleasing id *x) {}