我试图在c ++ 11中使用std ::中的shared_ptr,所以我包括显然使用的是typeinfo。问题是我得到了错误。
In file included from /usr/include/c++/4.8/memory:71:0,
from /home/dev/openclTest/modules/Quant.cpp:10:
/usr/include/c++/4.8/typeinfo:39:37: error: expected ‘}’ before end of line
#pragma GCC visibility push(default)
听起来,这是一个已知的错误: https://lists.debian.org/debian-gcc/2007/09/msg00497.html
无论如何,我希望我没有必要使用boosts库,所以如果有任何人都知道的快速修复,请告诉我。我使用cmake和g ++来构建项目。
谢谢!
答案 0 :(得分:0)
我刚与GCC 4.9.2有类似的问题。如果您忘记了在typeinfo之前包含的文件中的某些大括号,这似乎是常见的错误消息。
我没有找到完全重现消息的代码,但使用这个最小测试得到了非常相似的东西:
test.cpp:
{
#include <typeinfo>
int main() {}
我想这可能和你的错误一样,因为它发生在非常不同的GCC版本中。如果它确实是同一个问题,请检查您的其他包含。