51 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			C++
		
	
	
	
			
		
		
	
	
			51 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			C++
		
	
	
	
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;
 | 
						|
}
 |