https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84447

Martin Sebor <msebor at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2018-02-18
                 CC|                            |msebor at gcc dot gnu.org
     Ever confirmed|0                           |1

--- Comment #1 from Martin Sebor <msebor at gcc dot gnu.org> ---
Confirmed.  Bisected to r251422 (gcc 8.0.0):

r251422 | jason | 2017-08-29 15:40:08 -0400 (Tue, 29 Aug 2017) | 10 lines

        Instantiate default arguments/member initializers once.

Prior to that GCC errors out with:

t.C:11:6: error: use of deleted function ‘B::B(T, T) [with T = int][inherited
from A]’
 B b(0);
      ^
t.C:8:12: note: ‘B::B(T, T) [with T = int][inherited from A]’ is implicitly
deleted because the default definition would be ill-formed:
   using A::A;
            ^
t.C:8:12: error: use of deleted function ‘A::A(T, T) [with T = int]’
t.C:3:24: note: declared here
   template<typename T> A(T, T = 0) = delete;
                        ^

Reply via email to