C++ gives strange error during structure initialization with an array inside : <p>I try to compile very simple code:</p>

<pre><code>struct T {
    int a[3];
    int b;
    int c;
};

int main() {
    const int as[3] = { 5, 6, 7, };
    const T t {
        as, 2, 3,
    };
    return 0;
}
</code></pre>

<p>But it gives me very strange errors:</p>

<pre><code>t.cpp: In function 'int main()':
t.cpp:11:5: error: array must be initialized with a brace-enclosed initializer
     };
     ^
</code></pre>

<p>As from what I understand the compiler wants me to initialize everything in one single place. How do I initialize fields separately and then use them during initiliazation the structure later?</p>
