【发布时间】:2013-03-21 21:36:53
【问题描述】:
是否应该编译以下示例?
struct B;
struct A
{
A(B*&&){}
};
struct B : A
{
B() : A(this){}
};
int main(){}
在 LWS 上使用 clang 编译,但使用 gcc 我得到:
没有已知的参数 1 从 'B* const' 到 'B*&&' 的转换
如果我添加一个const,它会编译。
我还想指出 MSVC 也弄错了:
无法将参数 2 从 'B *const' 转换为 'B *&&'
所以看起来我们在两个编译器中都有一个错误。
已提交错误
【问题讨论】:
-
供参考 - 这在英特尔 C++ 编译器 (13.1) 上编译
标签: c++ c++11 rvalue-reference