block_cmt_end.c revision ea644d8440479359ea2480d458e3751a6bfae123
15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/*
25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  RUN: clang -E -trigraphs %s | grep bar &&
35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  RUN: clang -E -trigraphs %s | grep foo &&
45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  RUN: clang -E -trigraphs %s | not grep abc &&
55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  RUN: clang -E -trigraphs %s | not grep xyz &&
65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  RUN: clang -fsyntax-only -trigraphs -verify %s
75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)*/
85821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
95821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// This is a simple comment, /*/ does not end a comment, the trailing */ does.
105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)int i = /*/ */ 1;
115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/* abc
135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)next comment ends with normal escaped newline:
155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)*/
165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/* expected-warning {{escaped newline}} expected-warning {{backslash and newline}}  *\
185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/
195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)bar
212a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
222a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)/* xyz
235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)next comment ends with a trigraph escaped newline: */
255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
262a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)/* expected-warning {{escaped newline between}}   expected-warning {{backslash and newline separated by space}}    expected-warning {{trigraph ends block comment}}   *??/
275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/
282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
292a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)foo /* expected-error {{expected '=', ',', ';', 'asm', or '__attribute__' after declarator}} */
305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
312a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)