在Xcode 5(可能还有4个)项目设置中 -
我们怎样才能找出 Apple LLVM - 语言 - C ++ 设置中“编译器默认”实际解析的内容?
答案 0 :(得分:2)
根据Xcode 5.0.2中的“Quick Help Inspector”,当前的“Compiler Default”是“GNU ++ 98”,它对应于编译器选项“-std = gnu ++ 98”。
也可以在编译器源代码(http://clang.llvm.org/doxygen/CompilerInvocation_8cpp_source.html,第01057行)中看到:
01033 if (LangStd == LangStandard::lang_unspecified) {
01034 // Based on the base language, pick one.
01035 switch (IK) {
01036 case IK_None:
01037 case IK_AST:
01038 case IK_LLVM_IR:
01039 llvm_unreachable("Invalid input kind!");
01040 case IK_OpenCL:
01041 LangStd = LangStandard::lang_opencl;
01042 break;
01043 case IK_CUDA:
01044 LangStd = LangStandard::lang_cuda;
01045 break;
01046 case IK_Asm:
01047 case IK_C:
01048 case IK_PreprocessedC:
01049 case IK_ObjC:
01050 case IK_PreprocessedObjC:
01051 LangStd = LangStandard::lang_gnu99;
01052 break;
01053 case IK_CXX:
01054 case IK_PreprocessedCXX:
01055 case IK_ObjCXX:
01056 case IK_PreprocessedObjCXX:
01057 LangStd = LangStandard::lang_gnucxx98;
01058 break;
01059 }
01060 }