Need to exclude nasty_macros.h from check-cxx on z/OS due to conflicts within system headers.
Sample failure in random_shuffle.depr_in_cxx14.verify.cpp libcxx test.
error: 'error' diagnostics seen but not expected: Line 1268: expected ')' Line 1268: unknown type name 'This' Line 1268: expected ')'
caused by the following macros in nasty_macros.h
#define NASTY_MACRO This should not be expanded!!! #define _E NASTY_MACRO
The name collision is observed in the following code snippet whre _E is being used as parameter name:
inline int iswalnum(wint_t _E) {return __iswalnum(_E);}
It is reasonable to exclude nasty_macros.h on z/OS similarly as it was done on Windows.