
Hi,
I did not try to replace the macros, yet. I will try this that evening,
together with running the unit tests, as this is more time consuming.
For the macro expansion, we have the following:
1. AIX compiler
IBM XL C/C++ for AIX, V12.1 (5765-J02, 5725-C72)
Version: 12.01.0000.0004
"__xlC__" = 0x0c01
"__xlC_ver__" = 0x00000004
"__IBMC__" = __IBMC__
"__IBMCPP__" = 1210
"__COMPILER_VER__" = __COMPILER_VER__
"__MVS__" = __MVS__
2. z/OS Compiler
z/OS V1.13 XL C/C++
"__xlC__" = __xlC__
"__xlC_ver__" = __xlC_ver__
"__IBMC__" = __IBMC__
"__IBMCPP__" = 41130
"__COMPILER_VER__" = 0x410D0000
"__MVS__" = 1
I exchanged an email with a guy from IBM and they internally use the
__MVS__ macro for differentiation between the two compilers and then
differentiate between the versions in a following step. This is because MVS
was the predecessor of z/OS, so it is easy for mainframe people to see,
that __MVS__ does indeed mean mainframe.
Best regards,
Kilian.
On 23 October 2013 10:51, Bjorn Reese
On 10/22/2013 10:52 PM, Peter Dimov wrote:
__IBMCPP__ is VVRP decimal, whereas __xlC__ is VVRR hexadecimal (and I'm
not sure what that means for, say, version 12.10, 0x0C0A or 0x1210), so
According to the compiler documentation [1], it ought to be 0x0C0A, but I would prefer to see the actual value from the compiler first.
[1] http://www-01.ibm.com/support/**docview.wss?uid=swg27024210&**aid=1http://www-01.ibm.com/support/docview.wss?uid=swg27024210&aid=1
______________________________**_________________ Unsubscribe & other changes: http://lists.boost.org/** mailman/listinfo.cgi/boosthttp://lists.boost.org/mailman/listinfo.cgi/boost