When I create a static library, can the typedef structures cause name clashes?
Given the example header file below, I understand that myFun()
will be an external symbol and could clash with any other library with a myFun()
function. To avoid this, the best thing to do is give myFun()
a longer and more specific name.
// myFile.h
typedef struct
{
int myVar;
} myStruct;
void myFun(myStruct * input);
Is myStruct
an external symbol that could cause naming clashes when linking with another library?
And why does it not get listed when I look at the .a
static library file with nm myLib.a
?