xref: /aosp_15_r20/external/clang/test/Index/annotate-comments-preprocessor.c (revision 67e74705e28f6214e480b399dd47ea732279e315)
1*67e74705SXin Li // RUN: %clang_cc1 -fsyntax-only -I%S/Inputs %s
2*67e74705SXin Li 
3*67e74705SXin Li // As long as none of this crashes, we don't care about comments in
4*67e74705SXin Li // preprocessor directives.
5*67e74705SXin Li 
6*67e74705SXin Li #include "annotate-comments-preprocessor.h" /* Aaa. */ /* Bbb. */
7*67e74705SXin Li #include "annotate-comments-preprocessor.h" /* Aaa. */
8*67e74705SXin Li #include "annotate-comments-preprocessor.h" /** Aaa. */
9*67e74705SXin Li #include "annotate-comments-preprocessor.h" /**< Aaa. */
10*67e74705SXin Li #include "annotate-comments-preprocessor.h" // Aaa.
11*67e74705SXin Li #include "annotate-comments-preprocessor.h" /// Aaa.
12*67e74705SXin Li #include "annotate-comments-preprocessor.h" ///< Aaa.
13*67e74705SXin Li 
14*67e74705SXin Li #define A0 0
15*67e74705SXin Li #define A1 1 /* Aaa. */
16*67e74705SXin Li #define A2 1 /** Aaa. */
17*67e74705SXin Li #define A3 1 /**< Aaa. */
18*67e74705SXin Li #define A4 1 // Aaa.
19*67e74705SXin Li #define A5 1 /// Aaa.
20*67e74705SXin Li #define A6 1 ///< Aaa.
21*67e74705SXin Li 
22*67e74705SXin Li int A[] = { A0, A1, A2, A3, A4, A5, A6 };
23*67e74705SXin Li 
24*67e74705SXin Li #if A0 /** Aaa. */
25*67e74705SXin Li int f(int a1[A1], int a2[A2], int a3[A3], int a4[A4], int a5[A5], int a6[A6]);
26*67e74705SXin Li #endif /** Aaa. */
27*67e74705SXin Li 
28*67e74705SXin Li #if A1 /** Aaa. */
29*67e74705SXin Li int g(int a1[A1], int a2[A2], int a3[A3], int a4[A4], int a5[A5], int a6[A6]);
30*67e74705SXin Li #endif /* Aaa. */
31*67e74705SXin Li 
32*67e74705SXin Li #pragma once /** Aaa. */
33*67e74705SXin Li 
34*67e74705SXin Li #define FOO      \
35*67e74705SXin Li   do {           \
36*67e74705SXin Li     /* Aaa. */   \
37*67e74705SXin Li     /** Aaa. */  \
38*67e74705SXin Li     /**< Aaa. */ \
39*67e74705SXin Li     ;            \
40*67e74705SXin Li   } while(0)
41*67e74705SXin Li 
h(void)42*67e74705SXin Li void h(void) {
43*67e74705SXin Li   FOO;
44*67e74705SXin Li }
45*67e74705SXin Li 
46