On Wednesday, 24 October 2012 at 21:07:28 UTC, Manfred Nowak
wrote:
Chris Cain wrote:
So, no, the implementation wouldn't be changed during runtime
since it must be provided when linking.
Thats an expressed intent only. Reason: the linker does not
know any
thing about the language; the linker would be satisfied if there
exists any function the linker can link to ... but the linker
would
not prohibit any replacement of that function during runtime.
If the code in question is statically linked, this is not a
problem. If it's a shared library which is linked at runtime,
then this is actually intended behavior and is used to create
library shims. Here's an introduction to the technique:
http://www.linuxjournal.com/article/7795