[cfe-dev] Is __attribute(weak) supposed to fail?
clattner at apple.com
Sat Jul 12 09:31:32 PDT 2008
On Jul 11, 2008, at 11:07 PM, Kelly W wrote:
> Hello all,
> Just wondering if ‘__attribute(weak)’ is supposed to fail in the
> Verifier due to it not being supported at this point for Linux?
No, it works fine with llvm-gcc.
> like ‘__attribute(weak);’ for an extern function declaration, so I
> thought I would ask.
The weak attribute does two different things depending on context:
1. on a function with a definition, it allows the body to be overridden
2. on a function prototype, it makes the function "optional" and makes
it resolve to a null pointer if not linked into the app.
The former is llvm::GlobalValue::WeakLinkage, the later
is ..::ExternalWeakLinkage. Clang probably just has the later
confused with the former.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the cfe-dev