51 lines
843 B
C++
51 lines
843 B
C++
// RUN: %clang_extdef_map %s -- | FileCheck --implicit-check-not "c:@y" --implicit-check-not "c:@z" %s
|
|
|
|
int f(int) {
|
|
return 0;
|
|
}
|
|
// CHECK-DAG: c:@F@f#I#
|
|
|
|
extern const int x = 5;
|
|
// CHECK-DAG: c:@x
|
|
|
|
// Non-const variables should not be collected.
|
|
int y = 5;
|
|
|
|
// In C++, const implies internal linkage, so not collected.
|
|
const int z = 5;
|
|
|
|
struct S {
|
|
int a;
|
|
};
|
|
extern S const s = {.a = 2};
|
|
// CHECK-DAG: c:@s
|
|
|
|
struct SF {
|
|
const int a;
|
|
};
|
|
SF sf = {.a = 2};
|
|
// CHECK-DAG: c:@sf
|
|
|
|
struct SStatic {
|
|
static const int a = 4;
|
|
};
|
|
const int SStatic::a;
|
|
// CHECK-DAG: c:@S@SStatic@a
|
|
|
|
extern int const arr[5] = { 0, 1 };
|
|
// CHECK-DAG: c:@arr
|
|
|
|
union U {
|
|
const int a;
|
|
const unsigned int b;
|
|
};
|
|
U u = {.a = 6};
|
|
// CHECK-DAG: c:@u
|
|
|
|
// No USR can be generated for this.
|
|
// Check for no crash in this case.
|
|
static union {
|
|
float uf;
|
|
const int ui;
|
|
};
|