www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - Shared libraries in dmd 2.063

What's the official status of shared libraries in dmd 2.063? Is it
already deemed stable or can there still be breaking changes for dmd
2.064?

I'm asking because I think we should change the default visibility of D
functions in shared libraries. We want to encourage platform
independent code so good code should use the 'export' attribute
anyway.

Making all symbols public by default and templates is a bad combination
for performance as it stresses the runtime linker. Look at that gcc
page, they managed to create a templated library that takes 6 minutes
to load because of this!

http://gcc.gnu.org/wiki/Visibility
http://software.intel.com/en-us/articles/software-convention-models-using-elf-visibility-attributes
http://www.technovelty.org/code/why-symbol-visibility-is-good.html
May 25 2013