<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/125290>125290</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            Possible bug in implementation of P3310
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            new issue
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          higher-performance
      </td>
    </tr>
</table>

<pre>
    I think #124137 may have introduced a bug. The following code no longer compiles: https://godbolt.org/z/G77fMj1nh

```
struct None {};
template<class T>
struct Node { using Tail = T; };

template <template<class> class Fixture, typename List>
struct Recursive {
  static void foo() {
 return Recursive<Fixture, typename List::Tail>::foo();
  }
};

template <template<class> class Fixture>
struct Recursive<Fixture, None> {
  static void foo() {}
};

template <class>
class Monadic {};

template <class...>
class Variadic {};

int main() {
  Recursive<Monadic, Node<None> >::foo();  // success
  Recursive<Variadic, Node<None> >::foo(); // error
}
```

It seems that the partial specialization `struct Recursive<Fixture, None>` is completely missed by the compiler now... but only when the `Fixture` is variadic. I assume this is not supposed to be the case?
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJycVE2P2zYQ_TWjy2AFirSt-KCDdjcqFmiKoFj0TlFjiylFCvzw1vn1BSXvZp26bRCAgD448-a9GfLJEPTREjWwvYftYyFTHJ1vRn0cyd_N5A_OT9IqKno3nJsnjKO2fyJwUfFNJWqc5BlHeSLUNno3JEUDSuzTscTnkfDgjHEv2h5RuYHQOjTOHsmjctOsDQUQLY4xzvkFeAe8O7qhdyaWzh-Bd1-Bd7_U9eHTl8qOwNq8duyyWBuiTyrib84SQn0P9SOIe2BtpGk2MhKIB2VkCPgM4uP7-GGJxxQyt2epDYJ4zFH3-AbyDgdBPHyPCeIjruCd_ismT8AfMJ5nsnIi_FWHeFXzd1LJB31aibIWMUQZtcKT0wMenAP-Afj-dddTTN5-ywLx8O9lWhBtFpELLh9vcKsSXESx9uel3VRyzSkPISf-v7z_5PJKAFi7UvjkrBy0uprvrZyyLN-n_SG9vpWnbcRJanvd7itRl4qrqCH_edN2q8GI68nFkJSiEP6B90rlhwEveOS985dWXZ97YO1TxEA0BYyjjBhHwln6qKXBMJPS0uivMmpnEXbshwYHO4Y6LDfTUCRzxkmHQAP25wX-cmU9WvdSliX2KaKz5owvI9klAnbsFXbFOl2El_iEMoQ0UTaQkLesixjSPLtcITrsaS0iA4HoiqERw17sZUFNVYsPYrurhCjGZie5Utst70WlZMWHfU0Dk2yot0qqHe0K3XDGt6wSFWcbXolysz-Iqu7Zpt6o_UbsYcNoktqUxpym7DKFDiFRU_Et37PCyJ5MWPyQc0svuOwC59kefZOT7vp0DLBhRocYvsFEHQ01n10IujeUPRC1RZ27OZGN6zDcAT8LUbEiedN8Z3w6jqkvlZuAdxn18ribvftCKgLvFi4BeHche2r43wEAAP__eErLFA">