title: Copying child class to parent class while parent class has other constructors
body: <p>I have problem copying <code>struct a</code> to <code>struct b</code>. If I remove my own made constructors it will compile though. What constructor am I missing to copy construct?</p>
  <pre><code>#include &lt;array&gt;
  
  using f_t = float;
  
  struct a {
      f_t x;
      a() : x(0) {}
  };
  
  struct b : public a, public std::array&lt;f_t, 2&gt; {
  
      b() {}
  
      b(const a&amp; a_) : a(a_) {}
  
      b(a&amp;&amp; a_) : a(std::move(a_)) {}
  
      template &lt;typename ...T&gt;
      b(const T&amp;... list) : std::array&lt;f_t, 2&gt;{list...} {}
  
      template &lt;typename ...T&gt;
      b(T&amp;&amp;... list) : std::array&lt;f_t, 2&gt;{(f_t)std::move(list)...} {}
  
  };
  
  int main() {
      a x;
      b y = x;
  
      return 0;
  }
  </code></pre>