namespace Core {
static intf connexions[] = {
{ 13, 0 }
};
}
The static is forcing internal linkage on 'connexions', USBModule receives its own copy of the static data. This is better achieved through an unnamed namespace rather than the static keyword. But seeing as this is not what you want, you should read up on the extern keyword.