32 lines
832 B
C++
32 lines
832 B
C++
|
// RUN: %clang_cc1 -std=c++1z %s -verify
|
||
|
// RUN: %clang_cc1 -std=c++1z %s -verify -ftrigraphs -DENABLED_TRIGRAPHS=1
|
||
|
// RUN: %clang_cc1 -std=c++1z %s -verify -fno-trigraphs -DENABLED_TRIGRAPHS=0
|
||
|
|
||
|
#ifdef __MVS__
|
||
|
#ifndef ENABLED_TRIGRAPHS
|
||
|
#define ENABLED_TRIGRAPHS 1
|
||
|
#endif
|
||
|
#endif
|
||
|
|
||
|
??= define foo ;
|
||
|
|
||
|
static_assert("??="[0] == '#', "");
|
||
|
|
||
|
// ??/
|
||
|
error here;
|
||
|
|
||
|
// Note, there is intentionally trailing whitespace one line below.
|
||
|
// ??/
|
||
|
error here;
|
||
|
|
||
|
#if !ENABLED_TRIGRAPHS
|
||
|
// expected-error@11 {{}} expected-warning@11 {{trigraph ignored}}
|
||
|
// expected-error@13 {{failed}} expected-warning@13 {{trigraph ignored}}
|
||
|
// expected-error@16 {{}}
|
||
|
// expected-error@20 {{}}
|
||
|
#else
|
||
|
// expected-warning@11 {{trigraph converted}}
|
||
|
// expected-warning@13 {{trigraph converted}}
|
||
|
// expected-warning@19 {{backslash and newline separated by space}}
|
||
|
#endif
|