In general, I'm of the opinion that DLL API should be fully explicit. It's the only way you can reasonably provide ABI stability. That means no templates, no attribute inference and explicit exception lists if the compiler were to used them. -- Marco