<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">Hi all, <div class=""><br class=""></div><div class="">We have had to undef the check macro in include/vcl/builder.hxx because Apple defined check in previous versions of AssertMacros.h</div><div class=""><br class=""></div><div class="">I found the same issue when I used osl/conditn.hxx - the build log shows the following failure:</div><div class=""><br class=""></div><div class=""><pre class="console-output" style="box-sizing: border-box; white-space: pre-wrap; word-wrap: break-word; margin-top: 0px; margin-bottom: 0px; color: rgb(51, 51, 51); font-size: 13px; font-variant-ligatures: normal; orphans: 2; widows: 2; background-color: rgb(255, 255, 255);">In file included from /Users/tdf/lode/jenkins/workspace/lo_gerrit/Config/macosx_clang_dbgutil/vcl/quartz/ctfonts.cxx:32:
In file included from /Users/tdf/lode/jenkins/workspace/lo_gerrit/Config/macosx_clang_dbgutil/vcl/inc/osx/salinst.h:27:
/Users/tdf/lode/jenkins/workspace/lo_gerrit/Config/macosx_clang_dbgutil/include/osl/conditn.hxx:103:9: error: expected member name or ';' after declaration specifiers
        {
        ^</pre><div class="">Now basically this is caused by Apple’s decision, many moons ago, to define a non-underscored macro “check” in AssertMacros.h</div></div><div class=""><br class=""></div><div class="">Later on they realised their grave mistake, and so they allow programmers to define __ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES as 0, which prevents the definition of a variety of macro names that tend to collide with function names commonly used in code. </div><div class=""><br class=""></div><div class="">Unfortunately, it appears that AssertMacros.h is used in one header, which is in the CarbonCore framework - Debugging.h</div><div class=""><br class=""></div><div class="">This is in term used in CarbonCore.h, which is in turn included in the CoreServices framework, via the header CoreServices.h</div><div class=""><br class=""></div><div class="">CoreServices.h is used by the ApplicationServices framework, in (you guessed it…) ApplicationServices.h and probably a lot of other important framework services besides. </div><div class=""><br class=""></div><div class="">The point is, by the time I get to defining __ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES it’s far too late. </div><div class=""><br class=""></div><div class="">Given the “viral” nature of this header, can we just bite the bullet and define __ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES as zero somewhere in the source? </div><div class=""><br class=""></div><div class="">If others are agreeable, I’d love to do this - the only question is: where and how to do I do this?</div><div class=""><br class=""></div><div class="">Any help on this one gratefully accepted and appreciated :-)</div><div class=""><br class=""></div><div class="">Chris Sherlock</div></body></html>