typedef int IntTypedef;
IntTypedef g_IntVar; // Testing globals.
typedef enum Enum { // Testing constants.
RED,
GREEN,
BLUE
} EnumTypedef;
EnumTypedef g_EnumVar; // Testing members.
// FIXME: `sg_IntVar` appears both in global scope's children and compiland's
// children but with different symbol's id.
static int sg_IntVar = -1; // Testing file statics.
// FIXME: `g_Const` appears both in global scope's children and compiland's
// children but with different symbol's id.
const int g_Const = 0x88; // Testing constant data.
const int *g_pConst = &g_Const; // Avoid optimizing the const away
thread_local int g_tls = 0; // Testing thread-local storage.
class Class {
static int m_StaticClassMember;
public:
explicit Class(int a) {}
void Func() {}
};
int Class::m_StaticClassMember = 10; // Testing static class members.
Class ClassVar(1);
int f(int var_arg1, int var_arg2) { // Testing parameters.
long same_name_var = -1;
return 1;
}
int same_name_var = 100;
int main() {
int same_name_var = 0; // Testing locals.
const char local_const = 0x1;
// FIXME: 'local_CString` is not found through compiland's children.
const char local_CString[] = "abc"; // Testing constant string.
const char *local_pCString = local_CString; // Avoid optimizing the const away
int a = 10;
a++;
ClassVar.Func();
return 0;
}