extern int f (void); | |
extern int r; | |
const int *p; | |
void g () | |
{ | |
static const int &i = f(); | |
// Test that i points to the same place in both calls. | |
if (p && p != &i) | |
++r; | |
// Test that if so, it points to static data. | |
if (i != 42) | |
++r; | |
p = &i; | |
} | |
void h () | |
{ | |
int arr[] = { 1, 1, 1, 1, 1, 1, 1 }; | |
g (); | |
} |