block_cmt_end.c revision c436708c65be210d2ab761a02df2b6c06bd0a85b
1/*
2  RUN: %clang_cc1 -E -trigraphs %s | grep bar
3  RUN: %clang_cc1 -E -trigraphs %s | grep foo
4  RUN: %clang_cc1 -E -trigraphs %s | not grep qux
5  RUN: %clang_cc1 -E -trigraphs %s | not grep xyz
6  RUN: %clang_cc1 -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/* qux
13
14next comment ends with normal escaped newline:
15*/
16
17/* expected-warning {{escaped newline}} expected-warning {{backslash and newline}}  *\
18/
19
20int bar /* expected-error {{expected ';' after top level declarator}} */
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
30
31
32// rdar://6060752 - We should not get warnings about trigraphs in comments:
33// '????'
34/* ???? */
35