
On Wed, May 19, 2010 at 2:16 PM, Jürgen Hunold <juergen.hunold@ivembh.de> wrote:
...
... I've moved the definitions from win32.hpp into the specific compilers involved. These visibility macros are compiler extensions to C++, and are starting to show up in platforms other than Windows.
The rationale for the win32.hpp was that _every_ compiler has to support ___declspec on this platform. I don't know if clang on linux supports __declspec or uses gcc __attribute. So I think win32.hpp + platform compiler setup might be the way. Or even unix.hpp with __attribute usage for all gcc compatible compilers. Else we have a high redundancy defining the same macros in every compilers header.
In the end, I decide you were right about redundancy, so reverted to something much closer to your original patch. Since win32.hpp (and other platform configs) come after compiler configs, any compilers that need special handling can still do so. Thanks, --Beman