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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2024-05-07
     Ever confirmed|0                           |1

--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Confirmed. Slightly reduced:
```
template<typename T1>
struct A1 {
  template<typename T2>
  struct A2 { T2 t; };
};
void s(double k) {
  A1<int>::A2 a(2);
}
```

It looks like the deduction guide is not being generated correctly when the
inner template class is of a templated class. If A1 was not a template, GCC
acecpts the code just fine. that is:
```
struct A1 {
  template<typename T2>
  struct A2 { T2 t; };
};
void s(double k) {
  A1::A2 a(2);
}
```
Works just fine.

Reply via email to