18dfac0baaf0f81d3945bcb306480e358ba8d1f08John McCall// RUN: %clang_cc1 -fsyntax-only -verify %s 28dfac0baaf0f81d3945bcb306480e358ba8d1f08John McCall 38dfac0baaf0f81d3945bcb306480e358ba8d1f08John McCall#pragma clang arc_cf_code_audited foo // expected-error {{expected 'begin' or 'end'}} 48dfac0baaf0f81d3945bcb306480e358ba8d1f08John McCall 58dfac0baaf0f81d3945bcb306480e358ba8d1f08John McCall#pragma clang arc_cf_code_audited begin foo // expected-warning {{extra tokens at end of #pragma directive}} 68dfac0baaf0f81d3945bcb306480e358ba8d1f08John McCall 78dfac0baaf0f81d3945bcb306480e358ba8d1f08John McCall#pragma clang arc_cf_code_audited end 88dfac0baaf0f81d3945bcb306480e358ba8d1f08John McCall#pragma clang arc_cf_code_audited end // expected-error {{not currently inside '#pragma clang arc_cf_code_audited'}} 98dfac0baaf0f81d3945bcb306480e358ba8d1f08John McCall 108dfac0baaf0f81d3945bcb306480e358ba8d1f08John McCall#pragma clang arc_cf_code_audited begin // expected-note {{#pragma entered here}} 118dfac0baaf0f81d3945bcb306480e358ba8d1f08John McCall#pragma clang arc_cf_code_audited begin // expected-error {{already inside '#pragma clang arc_cf_code_audited'}} expected-note {{#pragma entered here}} 128dfac0baaf0f81d3945bcb306480e358ba8d1f08John McCall 138dfac0baaf0f81d3945bcb306480e358ba8d1f08John McCall#include "Inputs/pragma-arc-cf-code-audited.h" // expected-error {{cannot #include files inside '#pragma clang arc_cf_code_audited'}} 148dfac0baaf0f81d3945bcb306480e358ba8d1f08John McCall 158dfac0baaf0f81d3945bcb306480e358ba8d1f08John McCall// This is actually on the #pragma line in the header. 16b42f200777a66b98989160bf3987ce431540a584Andy Gibbs// expected-error@Inputs/pragma-arc-cf-code-audited.h:16 {{'#pragma clang arc_cf_code_audited' was not ended within this file}} 178dfac0baaf0f81d3945bcb306480e358ba8d1f08John McCall 188dfac0baaf0f81d3945bcb306480e358ba8d1f08John McCall#pragma clang arc_cf_code_audited begin // expected-error {{'#pragma clang arc_cf_code_audited' was not ended within this file}} 19