我已经成功编译了clang的当前3.3分支.但随后任何文件的C++编译都会因错误/错误而失败.可以修复吗?
In file included from /usr/lib/gcc/x86_64-linux-gnu/4.7/../../../../include/c++/4.7/iostream:39:
In file included from /usr/lib/gcc/x86_64-linux-gnu/4.7/../../../../include/c++/4.7/ostream:39:
In file included from /usr/lib/gcc/x86_64-linux-gnu/4.7/../../../../include/c++/4.7/ios:40:
In file included from /usr/lib/gcc/x86_64-linux-gnu/4.7/../../../../include/c++/4.7/bits/char_traits.h:40:
In file included from /usr/lib/gcc/x86_64-linux-gnu/4.7/../../../../include/c++/4.7/bits/stl_algobase.h:65:
In file included from /usr/lib/gcc/x86_64-linux-gnu/4.7/../../../../include/c++/4.7/bits/stl_pair.h:61:
In file included from /usr/lib/gcc/x86_64-linux-gnu/4.7/../../../../include/c++/4.7/bits/move.h:57:
/usr/lib/gcc/x86_64-linux-gnu/4.7/../../../../include/c++/4.7/type_traits:256:39: error: use of
undeclared identifier '__float128'
struct __is_floating_point_helper<__float128>
^
1 error generated.
Run Code Online (Sandbox Code Playgroud)
我不认为clang支持__float128.它可能与long double(16字节clang)的类型相同,因此可能是插入的简单情况:
#define __float128 long double
Run Code Online (Sandbox Code Playgroud)
要么:
typedef long double __float128;
Run Code Online (Sandbox Code Playgroud)
在你的包含链的早期某个地方.
我不保证它会起作用,但它可能会,并且最好尝试一下,而不是等到clang开始支持更多gcc扩展.
要么是,要么切换到gcc,如果这是一个选项.我敢肯定,gcc支持所有的的gcc扩展:-)
| 归档时间: |
|
| 查看次数: |
8847 次 |
| 最近记录: |