// RUN: %clang_cc1 -fsyntax-only -std=c++11 -verify %s // RUN: %clang_cc1 -fsyntax-only -std=c++11 -fallow-editor-placeholders -DSUPPRESS -verify %s struct Struct { public: void method(Struct &x); }; struct <#struct name#> { int <#field-name#>; #ifndef SUPPRESS // expected-error@-3 {{editor placeholder in source file}} // expected-error@-3 {{editor placeholder in source file}} #endif }; typename <#typename#>::<#name#>; decltype(<#expression#>) foobar; typedef <#type#> <#name#>; #ifndef SUPPRESS // expected-error@-4 2 {{editor placeholder in source file}} // expected-error@-4 {{editor placeholder in source file}} // expected-error@-4 2 {{editor placeholder in source file}} #endif namespace <#identifier#> { <#declarations#> #ifndef SUPPRESS // expected-error@-3 {{editor placeholder in source file}} // expected-error@-3 {{editor placeholder in source file}} #endif } using <#qualifier#>::<#name#>; #ifndef SUPPRESS // expected-error@-2 2 {{editor placeholder in source file}} #endif void avoidPlaceholderErrors(Struct &obj) { static_cast< <#type#> >(<#expression#>); while (<#condition#>) { <#statements#> } obj.method(<#Struct &x#>); #ifndef SUPPRESS // expected-error@-6 2 {{editor placeholder in source file}} // expected-error@-6 {{editor placeholder in source file}} // expected-error@-6 {{editor placeholder in source file}} // expected-error@-5 {{editor placeholder in source file}} #endif switch (<#expression#>) { case <#constant#>: <#statements#> #ifndef SUPPRESS // expected-error@-4 {{editor placeholder in source file}} // expected-error@-4 {{editor placeholder in source file}} // expected-error@-4 {{editor placeholder in source file}} #endif break; default: break; } } void Struct::method(<#Struct &x#>, noSupressionHere) { // expected-error {{unknown type name 'noSupressionHere'}} expected-error {{C++ requires a type specifier for all declarations}} #ifndef SUPPRESS // expected-error@-2 {{editor placeholder in source file}} #endif } void handleTrigraph() { <??=placeholder#> // expected-error {{expected expression}} expected-error {{expected expression}} expected-warning {{trigraph converted to '#' character}} } |