After lots of discussion with Jeremy and considerable testing, a few changes 
have been made to the core compiler, starting with clang-5.0 and then planning 
to add the same to newer versions, that you may or may not notice.

The distilled version is that clang-5.0 will now support __thread and 
thread_local on all systems, using the same emulated-tls mechanism gcc uses if 
necessary.  This should work immediately on our default setup of 
-stdlib=macports-libstdc++ , and it will work with libc++ once an enhanced 
version supporting this is moved through the pipeline.

Another change is that if the user is configured with LibcxxOnOlderSystems 
enabled in macports.conf, then clang will default to adding -stdlib=libc++ on < 
10.9, instead of -stdlib=libstdc++ if there is no stdlib specified on the build 
line, exactly as it does on newer systems. This has often caused errors up to 
this point.

Both of these changes, together with the legacysupport PG enhancements, should 
make build errors on older systems much less frequent, and simplify everyone's 
lives. 

There is always the possibility of unforeseen issues when released into the 
wild. Please let me know if you see such an event.

Ken

Reply via email to