1>------ 已启动全部重新生成: 项目: libasnparser, 配置: Debug Win32 ------
1>正在删除项目“libasnparser”(配置“Debug|Win32”)的中间文件和输出文件
1>正在编译...
1>Main.cpp
1>e:/work/libasnparser/libasnparser/position.hh(83) : error C2589: “(”: “::”右边的非法标记
1>e:/work/libasnparser/libasnparser/position.hh(83) : error C2059: 语法错误 : “::”
1>ParserDriver.cpp
1>e:/work/libasnparser/libasnparser/position.hh(83) : error C2589: “(”: “::”右边的非法标记
1>e:/work/libasnparser/libasnparser/position.hh(83) : error C2059: 语法错误 : “::”
1>asn1p_y.tab.cpp
1>e:/work/libasnparser/libasnparser/position.hh(83) : error C2589: “(”: “::”右边的非法标记
1>e:/work/libasnparser/libasnparser/position.hh(83) : error C2059: 语法错误 : “::”
1>e:/work/libasnparser/libasnparser/asn1p_y.tab.cpp(269) : warning C4065: switch 语句包含“default”但是未包含“case”标签
1>e:/work/libasnparser/libasnparser/asn1p_y.tab.cpp(300) : warning C4065: switch 语句包含“default”但是未包含“case”标签
1>正在生成代码...
u are probably including windows.h somewhere, which defines macros named max and min.
You can #define NOMINMAX before including windows.h to prevent it from defining those macros, or you can prevent macro invocation by using an extra set of parentheses:
column = (std::max)(1u, column + count);

本文记录了在libasnparser项目中遇到的编译错误,包括position.hh文件中的非法标记和语法错误,以及asn1p_y.tab.cpp文件中的警告信息。文章还提供了可能的解决方案,如在包含windows.h之前定义NOMINMAX宏来避免宏定义冲突。
8695

被折叠的 条评论
为什么被折叠?



