You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
104 lines
2.1 KiB
104 lines
2.1 KiB
// RUN: rm -rf %t |
|
// RUN: mkdir %t |
|
// RUN: c-index-test -test-load-source all -comments-xml-schema=%S/../../bindings/xml/comment-xml-schema.rng -target x86_64-apple-darwin10 %s > %t/out |
|
// RUN: FileCheck %s < %t/out |
|
|
|
// Ensure that XML we generate is not invalid. |
|
// RUN: FileCheck %s -check-prefix=WRONG < %t/out |
|
// WRONG-NOT: CommentXMLInvalid |
|
// rdar://12378714 |
|
|
|
/** |
|
* \brief Aaa. |
|
*/ |
|
int global_function(); |
|
// CHECK: <Declaration>int global_function()</Declaration> |
|
|
|
/** |
|
* \param x1 Aaa. |
|
*/ |
|
extern void external_function(int x1); |
|
// CHECK: <Declaration>extern void external_function(int x1)</Declaration> |
|
|
|
/** |
|
* \brief global variable; |
|
*/ |
|
int global_variable; |
|
// CHECK: <Declaration>int global_variable</Declaration> |
|
|
|
/** |
|
* \brief local variable; |
|
*/ |
|
static int static_variable; |
|
// CHECK: <Declaration>static int static_variable</Declaration> |
|
|
|
/** |
|
* \brief external variable |
|
*/ |
|
extern int external_variable; |
|
// CHECK: <Declaration>extern int external_variable</Declaration> |
|
|
|
int global_function() { |
|
/** |
|
* \brief a local variable |
|
*/ |
|
int local = 10; |
|
return local; |
|
} |
|
// CHECK: <Declaration>int global_function()</Declaration> |
|
// CHECK: <Declaration>int local = 10</Declaration> |
|
|
|
/** |
|
* \brief initialized decl. |
|
*/ |
|
int initialized_global = 100; |
|
// CHECK: <Declaration>int initialized_global = 100</Declaration> |
|
|
|
/** |
|
* \brief typedef example |
|
*/ |
|
typedef int INT_T; |
|
// CHECK: <Declaration>typedef int INT_T</Declaration> |
|
|
|
/** |
|
* \brief aggregate type example |
|
*/ |
|
struct S { |
|
/** |
|
* \brief iS1; |
|
*/ |
|
int iS1; |
|
/** |
|
* \brief dS1; |
|
*/ |
|
double dS1; |
|
}; |
|
// CHECK: <Declaration>struct S {}</Declaration> |
|
// CHECK: <Declaration>int iS1</Declaration> |
|
// CHECK: <Declaration>double dS1</Declaration> |
|
|
|
/** |
|
* \brief enum e; |
|
*/ |
|
enum e { |
|
One, |
|
/** |
|
* \brief Two; |
|
*/ |
|
Two, |
|
Three |
|
}; |
|
// CHECK: <Declaration>enum e {}</Declaration> |
|
// CHECK: <Declaration>Two</Declaration> |
|
|
|
/** |
|
*\brief block declaration |
|
*/ |
|
int (^Block) (int i, int j); |
|
// CHECK: <Declaration>int (^Block)(int, int)</Declaration> |
|
|
|
/** |
|
*\brief block declaration |
|
*/ |
|
int (^Block1) (int i, int j) = ^(int i, int j) { return i + j; }; |
|
// CHECK: <Declaration>int (^Block1)(int, int) = ^(int i, int j) {\n}</Declaration>
|
|
|