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

Patrick Palka <ppalka at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Known to work|                            |8.5.0
     Ever confirmed|0                           |1
                 CC|                            |ppalka at gcc dot gnu.org
             Status|UNCONFIRMED                 |NEW
            Summary|deduced conflicting types   |[12/13/14/15 Regression]
                   |for explicitly specified    |deduced conflicting types
                   |(non-deduced) template      |for explicitly specified
                   |parameter in explicit       |(non-deduced) template
                   |object member function of   |parameter in static member
                   |struct template             |function (and explicit
                   |                            |member function) of struct
                   |                            |template
   Target Milestone|---                         |12.5
   Last reconfirmed|                            |2025-02-24

--- Comment #1 from Patrick Palka <ppalka at gcc dot gnu.org> ---
Confirmed.  This bug also affects ordinary static member functions:

template<typename>
struct S {
  template <typename T, typename U>
  static void f(T, U) {}

  void g() { f<char>(0, 0); } // bogus "deduced conflicting types for parameter
T (char and int)"
};

which is a regression starting with r9-3807-g5d9a0e3b99e31a "Implement P0846R0,
ADL and function templates" although I think that just exposed a latent bug
elsewhere.

Reply via email to