format-comment-cdecls.c revision 88b9521364735a6c9a7ccd23c5bd19d81a80cdd3
1// RUN: rm -rf %t 2// RUN: mkdir %t 3// RUN: env LIBCLANG_ACTIVATE_FORMAT=1 \ 4// RUN: c-index-test -test-load-source all -comments-xml-schema=%S/../../bindings/xml/comment-xml-schema.rng -target x86_64-apple-darwin10 %s \ 5// RUN: | FileCheck %s 6 7/** 8 * \brief Aaa. 9*/ 10int global_function(); 11// CHECK: <Declaration>int global_function()</Declaration> 12 13/** 14 * \param x1 Aaa. 15*/ 16extern void external_function(int x1); 17// CHECK: <Declaration>extern void external_function(int x1)</Declaration> 18 19/** 20 * \brief global variable; 21*/ 22int global_variable; 23// CHECK: <Declaration>int global_variable</Declaration> 24 25/** 26 * \brief local variable; 27*/ 28static int static_variable; 29// CHECK: <Declaration>static int static_variable</Declaration> 30 31/** 32 * \brief external variable 33*/ 34extern int external_variable; 35// CHECK: <Declaration>extern int external_variable</Declaration> 36 37int global_function() { 38 /** 39 * \brief a local variable 40 */ 41 int local = 10; 42 return local; 43} 44// CHECK: <Declaration>int global_function()</Declaration> 45// CHECK: <Declaration>int local = 10</Declaration> 46 47/** 48 * \brief initialized decl. 49*/ 50int initialized_global = 100; 51// CHECK: <Declaration>int initialized_global = 100</Declaration> 52 53/** 54 * \brief typedef example 55*/ 56typedef int INT_T; 57// CHECK: <Declaration>typedef int INT_T</Declaration> 58 59/** 60 * \brief aggregate type example 61*/ 62struct S { 63/** 64 * \brief iS1; 65*/ 66 int iS1; 67/** 68 * \brief dS1; 69*/ 70 double dS1; 71}; 72// CHECK: <Declaration>struct S {\n}</Declaration> 73// CHECK: <Declaration>int iS1</Declaration> 74// CHECK: <Declaration>double dS1</Declaration> 75 76/** 77 * \brief enum e; 78*/ 79enum e { 80 One, 81/** 82 * \brief Two; 83*/ 84 Two, 85 Three 86}; 87// CHECK: <Declaration>enum e {\n}</Declaration> 88// CHECK: <Declaration>Two</Declaration> 89 90/** 91 *\brief block declaration 92*/ 93int (^Block) (int i, int j); 94// CHECK: <Declaration>int (^Block)(int, int)</Declaration> 95 96/** 97 *\brief block declaration 98*/ 99int (^Block1) (int i, int j) = ^(int i, int j) { return i + j; }; 100// CHECK: <Declaration>int (^ Block1) (int, int) = ^ (int i, int j) {\n}</Declaration> 101