You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Symbols with static are scoped to the object it resides in. Other objects can not link with those symbols.
Symbols with N_LIB_PRIVATE in an object can be linked with an another one, but if they are combined into a "final" object (eg. relocated .o, a dynamic library, an executable), the symbols are no longer exposed and can not be linked against.
cgen sometimes generates
static
, sometimesN_LIB_PRIVATE
(aka__attribute__((visibility("hidden")))
on non-windows or nothing on windows)This seems more accidental than intentional
Example
Current Output
cgen:
Expected Output
either all use static or all use N_LIB_PRIVATE
Additional Information
I noticed that cgen produces different visibility:
the other observations are
TM__75e9azNN0IP6k3vdklPNdtg_2
(thanks to const merging), and these use cstatic
a2__EgAUY4wPCCk0Q6fNaQrdjA
(thanks to const merging also) but these use N_LIB_PRIVATEFoo(x: 1)
links
(EDIT)
The text was updated successfully, but these errors were encountered: