[docs] Add LICENSE.txt to the root of the mono-repo
[llvm-project.git] / clang / test / Sema / warn-strict-prototypes.m
blobba0f9e6101b6e9de88a39dd110f077ab2fc8ef1b
1 // RUN: %clang_cc1 -fsyntax-only -Wstrict-prototypes -verify -fblocks %s
3 @interface Foo
5 @property (nonatomic, copy) void (^noProtoBlock)(); // expected-warning {{a block declaration without a prototype is deprecated}}
6 @property (nonatomic, copy) void (^block)(void); // no warning
8 - doStuff:(void (^)()) completionHandler; // expected-warning {{a block declaration without a prototype is deprecated}}
9 - doOtherStuff:(void (^)(void)) completionHandler; // no warning
11 @end
13 void foo() { // expected-warning {{a function declaration without a prototype is deprecated in all versions of C}}
14   void (^block)() = // expected-warning {{a block declaration without a prototype is deprecated}}
15                     ^void(int arg) { // no warning
16   };
17   void (^block2)(void) = ^void() {
18   };
19   void (^block3)(void) = ^ { // no warning
20   };
23 void (*(^(*(^block4)()) // expected-warning {{a block declaration without a prototype is deprecated}}
24      ()) // expected-warning {{a function declaration without a prototype is deprecated in all versions of C}}
25      ()) // expected-warning {{a block declaration without a prototype is deprecated}}
26      (); // expected-warning {{a function declaration without a prototype is deprecated in all versions of C}}