summaryrefslogtreecommitdiffstats
path: root/clang/test/Preprocessor/pragma_assume_nonnull.c
blob: 1aec2120fd167e0478ff6e1fce968393f9e6b1c5 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// RUN: %clang_cc1 -fsyntax-only -verify %s
// RUN: %clang_cc1 -E %s | FileCheck %s

// CHECK: #pragma clang assume_nonnull begin
#pragma clang assume_nonnull begin

int bar(int * ip) { return *ip; }

// CHECK: #pragma clang assume_nonnull end
#pragma clang assume_nonnull end

int foo(int * _Nonnull ip) { return *ip; }

int main(void) {
   return bar(0) + foo(0); // expected-warning 2 {{null passed to a callee that requires a non-null argument}}
}