1 | // RUN: %clang_cc1 -Wno-objc-root-class -fsyntax-only -verify %s |
2 | |
3 | @interface Foo |
4 | @end |
5 | |
6 | @implementation Foo |
7 | - (int)add:(int)a with:(int)b { |
8 | return a + b; |
9 | } |
10 | |
11 | - (void)testIntegerOverflows { |
12 | // expected-warning@+1 {{overflow in expression; result is 536870912 with type 'int'}} |
13 | (void)[self add:0 with:4608 * 1024 * 1024]; |
14 | |
15 | // expected-warning@+1 {{overflow in expression; result is 536870912 with type 'int'}} |
16 | (void)[self add:0 with:[self add:4608 * 1024 * 1024 with:0]]; |
17 | } |
18 | @end |
19 | |