The boolean logic in the patch looks wrong to me. You're going to end up disabling __in and __out for all GCC and Clang programs regardless of what language they use because __GNUC__ will be defined.
Seems like this would be better: #if defined(__cplusplus) && defined(__GNUC__) // Don't define __in and __out because they conflict with libstdc++. #else #define __in #define __out #endif --David On Mon, May 29, 2017 at 12:43 PM, Jacek Caban <[email protected]> wrote: > I've seen a very good news that a fix to libstdc++ is on its way and that's > great. However, we need to support already released versions as well. That's > why I propose this patch. Ideally, we'd use __GLIBCXX__ macro, but it's not > available without including any standard header and sal.h is not a good > place to do that. In the future, when libstdc++ is fixed, we may change > guards to be version-dependent. > > Signed-off-by: Jacek Caban <[email protected]> > --- > mingw-w64-headers/include/sal.h | 8 +++++++- > 1 file changed, 7 insertions(+), 1 deletion(-) > > > > ------------------------------------------------------------------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > _______________________________________________ > Mingw-w64-public mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/mingw-w64-public > ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ Mingw-w64-public mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
