静态成员函数可以访问不完整类型的成员

时间:2014-10-19 03:26:51

标签: c++ c++11

我在gcc中发现以下代码失败,但在clang中编译。

struct S
{
    int foo();
    static auto bar() -> decltype(std::declval<S>().foo());
    void baz(decltype(bar()));
};

基于this thread中的类似示例,我希望代码失败,因为S在其范围内是不完整的类型,但我不确定静态函数是否有特殊规则。

0 个答案:

没有答案