<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/62767>62767</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[c++20] Clang crashes on template argument deduction example
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
jensmassberg
</td>
</tr>
</table>
<pre>
Clang crashes on the following code:
```
template<long unsigned int>
struct str {
constexpr str(...) {}
};
template<long unsigned int N> str(const char (&)[N]) -> str<N>;
template <str fs> void foo() {}
int main() {
foo<"test">();
}
```
Example works fine in GCC and MSVC, see [godbolt](https://gcc.godbolt.org/z/rqnc9KxcY)
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyEks9v3CoQx_-a8QXF8g7rXwcf3nrjd3h6uVSq1COGsU2KYQs4SfvXV3g3SdMeKllYMF--n5lhRAh6tkQdlCcoz5nY4uJ890g2rCKEkfycjU5973oj7MykF2GhwJxlcSE2OWPcs04Bpwj4P1CcoXhdq-L27dtI68WISMB74-zMNruTFdM2Ar-_ikL0m4wsRM-gPl3PmHQ2RHq5-HQO2OR5Dtjugvp8Y9Vn4Ke_g9gD8PubzW7L5CI8A2wAK8AWytMDlOdkf_eq5H269Gb_EcKA9ynbKST5k9OKTc7tfh8zTPBVaPtL6FpdkvMeECOFCIiJtWveiW9Vfuzodb1_EevFEHt2_mtgk7bEtGX_9j0TVrH_P33uAXsWiBiUp9mp0Zm4l9gsMV5CejQcAIdZyvwWzp2fAYcfgIP_ZmX734v8AthmquOq5a3IqDtUzZEfKmzLbOnqiojX42FSY6GURJqOx2acaGoqcawbmekOC-RFeaiLljeHMldF0YoDTZKQY8VHOBa0Cm1yY57WhM90CBt1FdZVnRkxkgn7iCJaemZ7MPWqPGe-S3fuxm0OcCyMDjG8u0QdzT7bEvAEeMICyjP7c5ZfX1P4eVvJRqZIbTJqZxld-5tt3nS_dUzHZRtz6VbAISFvv7uLd48kI-CwJxoAh72QnwEAAP__vTQHDA">