1 // RUN: %clang_cc1 -std=c2x -ast-dump %s | FileCheck %s
4 * Preprocessor line numbers unspecified
7 // The line number associated with a pp-token should be the line number of
8 // the first character of the pp-token.
10 spans multiple lines \
12 // CHECK: ImplicitCastExpr {{.*}} <line:9
13 // CHECK-NEXT: StringLiteral {{.*}} <col:3>
15 // The line number associated with a pp-directive should be the line number
16 // of the line with the first # token.
17 // Possible FIXME: The AST node should be on line 1002 if we take the line
18 // number to be associated with the first # token. However, this relies on an
19 // interpretation of the standard definition of "presumed line" to be before
20 // line splices are removed. The standard leaves this unspecified, so this
21 // may not represent an actual issue.
26 // CHECK: ImplicitCastExpr {{.*}} <line:1000
27 // CHECK: StringLiteral {{.*}} <col:3>
29 // The line number associated with a macro invocation should be the line
30 // number of the first character of the macro name in the invocation.
32 // Reset the line number to make it easier to understand the next test.
33 // FIXME: The line number should be 2005 (first letter of the macro name) and
34 // not 2007 (closing parenthesis of the macro invocation).
45 // Reset the line number again for ease.
47 _Static_assert(2001 == \