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

    <tr>
        <th>Summary</th>
        <td>
            wrong mangling for lambda in unevaluated context within class
        </td>
    </tr>

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

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

    <tr>
      <th>Reporter</th>
      <td>
          zygoloid
      </td>
    </tr>
</table>

<pre>
    Testcase:
```
struct C {
 template<typename T, decltype(([](T, auto) { return 0; }, 0)) N = 0> void f() {}
};
void g() { C().f<int>(); }
```
This lambda appears within a class body, so it needs to be the same entity across the entire program. But we mangle this as `_ZN1C1fIiTnDTcmLNS_3$_0EELi0EELi0EEEvv`.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJxsUsmOnDAQ_ZriUhpkbAzDgcP0JkUazSV9ymVkoBocGRvZpjudr49MT2sukUos79XyalEh6NEStSB3IA-ZWuPkfPv3Pjrj9JB1bri3ZwqxV4FAvAE7AHuDin3Z9huiX_uIe4R690Aw0rwYFQnEPt4XsmomPAPf40C9SQjw12RbVeCvG6fW6IA3KQ16iqu3yEDsEOpDohnwJtEfCOKQmCNenR7wsuXawpLnQ2F9APElZnMav51w__jOLyD22kYQxwfwrPW_Hs-TDmjU3A0K1bKQ8gFvOk7aosLeqBAwzSrpDA51REs0BIwOO8I4EYY0ArJRxzuq3rsQNjghnnDxbvRqznG3RrwRzsqOJgXqgCogVOzz10exLy4_9Nkezv38_vHzUwAvP9nx-K6fj-P1ChXLs6EVQyMalVFbVK-skpLVTTa1fJBUqaYpazU0XEjZcy47yZpCdlVdsEy3nHHBSiYZE7Vs8lKKoruoQZWd4hWTUDKalTa5Mdc5d37MdAgrtVXRiCYzqiMTtmPi3NINNxI4T7fl2xTz0q1jgJIZHWL4zhJ1NNTevLPjo3ltR7w4_5y5trhauiqzqkgD9s5G-hOfK9gWkK3etFOMS0iHyk_AT6OO09rlvZuBn1Ktr9fL4t1v6iPw06YwAD9tHfwLAAD__8cH7MY">