GCC style weak linking in Visual Studio?
c, c++, gcc, visual-studio, weak-linking
Solution
MSVC++ has `__declspec(selectany)` which covers part of the functionality of weak symbols: it allows you to define multiple identical symbols with external linkage, directing the compiler to choose any one of several available. However, I don't think MSVC++ has anything that would cover the other part of weak symbol functionality: the possibility to provide "replaceable" definitions in a library.
This, BTW, makes one wonder how the support for standard replaceable `::operator new` and `::operator delete` functions works in MSVC++.
Problem
GCC has the ability to make a symbol link weakly via `__attribute__((weak))`. I want to use the a weak symbol in a static library that users can override in their application. A GCC style weak symbol would let me do that, but I don't know if it can be done with visual studio. Does Visual Studio offer a similar feature?