Dominic Chen | 184c624 | 2017-03-03 18:02:02 +0000 | [diff] [blame] | 1 | // RUN: %clang_analyze_cc1 -fblocks -analyzer-checker=core,nullability -verify %s |
Devin Coughlin | e4224cc | 2016-11-14 22:46:02 +0000 | [diff] [blame] | 2 | |
| 3 | void it_takes_two(int a, int b); |
| 4 | void function_pointer_arity_mismatch() { |
| 5 | void(*fptr)() = it_takes_two; |
Devin Coughlin | 8693adf | 2016-11-15 18:40:46 +0000 | [diff] [blame] | 6 | fptr(1); // no-crash expected-warning {{Function taking 2 arguments is called with fewer (1)}} |
Devin Coughlin | e4224cc | 2016-11-14 22:46:02 +0000 | [diff] [blame] | 7 | } |
| 8 | |
| 9 | void block_arity_mismatch() { |
Devin Coughlin | 8693adf | 2016-11-15 18:40:46 +0000 | [diff] [blame] | 10 | void(^b)() = ^(int a, int b) { }; |
| 11 | b(1); // no-crash expected-warning {{Block taking 2 arguments is called with fewer (1)}} |
Devin Coughlin | e4224cc | 2016-11-14 22:46:02 +0000 | [diff] [blame] | 12 | } |