Home | History | Annotate | Download | only in Lexer
      1 // Preamble detection test: see below for comments and test commands.
      2 //* A BCPL comment that includes '/*'
      3 #include <blah>
      4 #ifndef FOO
      5 #else
      6 #ifdef BAR
      7 #elif WIBBLE
      8 #endif
      9 #pragma unknown
     10 #endif
     11 #ifdef WIBBLE
     12 #include "honk"
     13 #else
     14 int foo();
     15 #endif
     16 
     17 // This test checks for detection of the preamble of a file, which
     18 // includes all of the starting comments and #includes. Note that any
     19 // changes to the preamble part of this file must be mirrored in
     20 // Inputs/preamble.txt, since we diff against it.
     21 
     22 // RUN: %clang_cc1 -print-preamble %s > %t
     23 // RUN: echo END. >> %t
     24 // RUN: FileCheck < %t %s
     25 
     26 // CHECK: // Preamble detection test: see below for comments and test commands.
     27 // CHECK-NEXT: //* A BCPL comment that includes '/*'
     28 // CHECK-NEXT: #include <blah>
     29 // CHECK-NEXT: #ifndef FOO
     30 // CHECK-NEXT: #else
     31 // CHECK-NEXT: #ifdef BAR
     32 // CHECK-NEXT: #elif WIBBLE
     33 // CHECK-NEXT: #endif
     34 // CHECK-NEXT: #pragma unknown
     35 // CHECK-NEXT: #endif
     36 // CHECK-NEXT: END.
     37