MSVC列表初始化ICE与结构一起使用时?

时间:2018-07-28 15:53:45

标签: c++ c++11 visual-c++ list-initialization internal-compiler-error

这段代码可以在gcc 8.1和clang 6.0上很好地编译,但是可以在MSVC上提供ICE(2017和2018的预发布版本):

#include <vector>
#include <string>

struct Data {
    unsigned char data;
};

struct A {
    std::string x;
    Data y{255};
};

void f(std::vector<A> arg) {
}

int main() {
    f(std::vector<A>{{"Test"}});
}

很显然,我遇到了另一个MSVC编译器错误。

但是要确定一点:上面的代码是否符合标准C ++,还是我也出错了?

0 个答案:

没有答案