【发布时间】:2019-08-01 08:34:36
【问题描述】:
unixpreproc.cpp
#ifdef unix
#warning "unix is defined"
#endif
#ifdef __unix__
#warning "__unix__ is defined"
#endif
void main() {}
使用英特尔 C++ 编译器 19.0.3:
icpc -o unixpreproc unixpreproc.cpp 表明 unix 和 __unix__ 宏都已定义
但是
icpc -std=c++11 -o unixpreproc unixpreproc.cpp 表明只定义了__unix__。这是故意的吗?是not documented in the Intel compiler manual。
【问题讨论】:
-
似乎是文档中的疏忽。请注意,如果使用了
-std=gnu++11,则定义了unix。
标签: c++ c++11 unix preprocessor icc