I have built the RC on Mac OS X 10.11 using Apple LLVM version 8.0.0 (clang-800.0.42.1)
successfully while specifying c++03/11/14/1z
I have built the RC on Mac OS X 10.14 using Apple LLVM version 10.0.0 (clang-1000.10.44.4)
successfully while specifying c++03/11/14,
but failed when specifying c++17/2a, because the Python 2.7 headers shipped with Mac OS 10.14 use the "register" keyword:
In file included from /System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7/Python.h:85:
/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7/unicodeobject.h:534:5: error: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
register PyObject *obj, /* Object */
^~~~~~~~~
successfully while specifying c++03/11/14,
but failed when specifying c++17/2a, because the Python 2.7 headers shipped with Mac OS 10.13 use the "register" keyword:
In file included from /System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7/Python.h:85:
/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7/unicodeobject.h:534:5: error: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
register PyObject *obj, /* Object */
^~~~~~~~~
(same results as with Apple's clang)
I have built the RC on Ubuntu 18.14 with gcc 7.3.2
successfully while specifying c++03/11/14,
but failed when specifying c++17/2a, because the Python 2.7 headers shipped with 18.04 use the "register" keyword:
In file included from /usr/include/python2.7/Python.h:88:
/usr/include/python2.7/unicodeobject.h:534:5: warning: 'register' storage class specifier is deprecated and incompatible with C++17 [-Wdeprecated-register]
register PyObject *obj, /* Object */
^~~~~~~~~
and I had the same results with a recently built version of clang on Ubuntu (success on 03/11/14, but python failures with 17/2a)
-- Marshall