Инициализация std::array

Здравствуйте.

Я пытаюсь в матрицу точек Point пихнуть новую точку temp, но мне выдаёт ворнинг на "недопустимый неполный тип".

C++Выделить код

1
2
3
4
5
6

        using Point = std::array<double, 2>;
    using Polygon = std::vector<std::vector<Point>>;
    Polygon poligon(1);
 
    Point temp = {1.0, 2.0};
    poligon[0].push_back(temp);

Можете объяснить, что я делаю не так, ибо вроде std::array инициализируется именно так, как я и делаю.

p.s менять тип данных с

на

нельзя. Хотя если придумаете, как сперва создать пару, а потом пихнуть её в poligon как Point, то можно. Заранее спасибо!