| // RUN: %clang_cc1 %s -std=c23 -E -verify |
| |
| #embed __FILE__ unrecognized |
| // expected-error@-1 {{unknown embed preprocessor parameter 'unrecognized'}} |
| #embed __FILE__ unrecognized::param |
| // expected-error@-1 {{unknown embed preprocessor parameter 'unrecognized::param'}} |
| #embed __FILE__ unrecognized::param(with, args) |
| // expected-error@-1 {{unknown embed preprocessor parameter 'unrecognized::param'}} |
| |
| // The first of these two cases was causing a failed assertion due to not being |
| // at the end of the directive when we finished skipping past `bla`. |
| #embed __FILE__ bla(2) limit(2) // expected-error {{unknown embed preprocessor parameter 'bla'}} |
| #embed __FILE__ limit(2) bla(2) // expected-error {{unknown embed preprocessor parameter 'bla'}} |
| |
| // We intentionally only tell you about one invalid parameter at a time so that |
| // we can skip over invalid token soup. |
| #embed __FILE__ bla(2) limit(2) bork // expected-error {{unknown embed preprocessor parameter 'bla'}} |