1*67e74705SXin Li // RUN: %clang_cc1 -fsyntax-only -verify %s 2*67e74705SXin Li 3*67e74705SXin Li #pragma clang arc_cf_code_audited foo // expected-error {{expected 'begin' or 'end'}} 4*67e74705SXin Li 5*67e74705SXin Li #pragma clang arc_cf_code_audited begin foo // expected-warning {{extra tokens at end of #pragma directive}} 6*67e74705SXin Li 7*67e74705SXin Li #pragma clang arc_cf_code_audited end 8*67e74705SXin Li #pragma clang arc_cf_code_audited end // expected-error {{not currently inside '#pragma clang arc_cf_code_audited'}} 9*67e74705SXin Li 10*67e74705SXin Li #pragma clang arc_cf_code_audited begin // expected-note {{#pragma entered here}} 11*67e74705SXin Li #pragma clang arc_cf_code_audited begin // expected-error {{already inside '#pragma clang arc_cf_code_audited'}} expected-note {{#pragma entered here}} 12*67e74705SXin Li 13*67e74705SXin Li #include "Inputs/pragma-arc-cf-code-audited.h" // expected-error {{cannot #include files inside '#pragma clang arc_cf_code_audited'}} 14*67e74705SXin Li 15*67e74705SXin Li // This is actually on the #pragma line in the header. 16*67e74705SXin Li // expected-error@Inputs/pragma-arc-cf-code-audited.h:16 {{'#pragma clang arc_cf_code_audited' was not ended within this file}} 17*67e74705SXin Li 18*67e74705SXin Li #pragma clang arc_cf_code_audited begin // expected-error {{'#pragma clang arc_cf_code_audited' was not ended within this file}} 19