block_cmt_end.c revision d7d5f0223bd30dfd618762349c6209dd1d5ea3e6
1/*
2  RUN: clang-cc -E -trigraphs %s | grep bar &&
3  RUN: clang-cc -E -trigraphs %s | grep foo &&
4  RUN: clang-cc -E -trigraphs %s | not grep abc &&
5  RUN: clang-cc -E -trigraphs %s | not grep xyz &&
6  RUN: clang-cc -fsyntax-only -trigraphs -verify %s
7*/
8
9// This is a simple comment, /*/ does not end a comment, the trailing */ does.
10int i = /*/ */ 1;
11
12/* abc
13
14next comment ends with normal escaped newline:
15*/
16
17/* expected-warning {{escaped newline}} expected-warning {{backslash and newline}}  *\
18/
19
20bar
21
22/* xyz
23
24next comment ends with a trigraph escaped newline: */
25
26/* expected-warning {{escaped newline between}}   expected-warning {{backslash and newline separated by space}}    expected-warning {{trigraph ends block comment}}   *??/
27/
28
29foo /* expected-error {{invalid token after top level declarator}} */
30
31
32// rdar://6060752 - We should not get warnings about trigraphs in comments:
33// '????'
34/* ???? */
35
36
37
38
39