Инициализация списка MSVC ICE при использовании со структурами?

Этот фрагмент кода хорошо компилируется на gcc 8.1 и clang 6.0, но дает ICE на MSVC (предварительный выпуск на 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 ответов

Другие вопросы по тегам