Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我最近编译了新的clang(现在是3.1),并试图用它来解析我的项目,但是它在解析标准库/包含时失败了......例如我看到以下错误:
/usr/include/c++/4.4/cstddef:51:9: 错误:预期';' 在顶级声明符或 /usr/include/c++/4.4/bits/cpp_type_traits.h:71:3: 错误:未知类型名称“模板”之后
显然clang无法解析这些文件,但这些是标准的libstc文件..我该怎么办?
好的,我有自己的答案:首先,我没有正确介绍问题。我使用的是 libclang 库,而不是编译器本身。其次,解决方案是在解析 c++ 代码时始终强制使用 c++ 语言,因为解析器本身有时会决定他正在解析 c 代码,即使它的 c++ 代码也是如此。
解决方案是将 -xc++ 参数传递给解析器。