Clang Project

clang_source_code/test/Lexer/null-character-in-literal.c
1// RUN: %clang_cc1 -fsyntax-only -verify %s
2
3// This file contains literal null characters, be careful not to remove them
4// accidentally.
5
6char a = ''; // expected-warning {{null character(s) preserved in char literal}}
7char b = '\'; // expected-warning {{null character(s) preserved in char literal}}
8              // expected-warning@-1 {{unknown escape sequence '\x0'}}
9
10char *c = "nullcharacter"; // expected-warning {{null character(s) preserved in string literal}}
11char *d = "null\character"; // expected-warning {{null character(s) preserved in string literal}}
12                            // expected-warning@-1 {{unknown escape sequence '\x0'}}
13
14// Put broken include in the end because it suppresses subsequent warnings.
15#include <null\character> // expected-warning {{null character(s) preserved in string literal}}
16                          // expected-error@-1 {{'null\character' file not found}}
17