extern int X; // { dg-message "previous declaration" } | |
extern int Y (int); // { dg-message "old declaration" } | |
extern int Y (float); | |
static int Z (int s) // { dg-message "old declaration" } | |
{ | |
return s; | |
} | |
void Foo () | |
{ | |
extern char X; // { dg-error "conflicting declaration" } | |
extern char Y (int); // { dg-error "ambiguating new declaration" } | |
extern int Y (float); | |
extern void Y (double); | |
extern char Z (int); // { dg-error "ambiguating new declaration" } | |
} | |