<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/185693>185693</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
Candidate function is _expliciitly_ deleted, not implicitly
</td>
</tr>
<tr>
<th>Labels</th>
<td>
clang:frontend
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
kparzysz
</td>
</tr>
</table>
<pre>
The diagnostic message says that the candidate function was implicitly deleted while the deletion was most definitely explicit:
Testcase:
```
#include <iostream>
template <typename T>
void fred(const T &x) {
std::cout << x << "\n";
}
template <>
void fred(const double &) = delete;
int main() {
fred(8.0);
}
```
`clang++ tdel1.cc`
```
tdel1.cc:13:3: error: call to deleted function 'fred'
13 | fred(8.0);
| ^~~~
tdel1.cc:9:6: note: candidate function [with T = double] has been implicitly
deleted
9 | void fred(const double &) = delete;
| ^
1 error generated.
```
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJyUU8uS4ygQ_JrSpWIcErReBx1ke_wFfZ_AUJbYReAQpe72HPrbN5A1Xk9M72EVKHgUVZlkgorRDp6og3IP5TFTC49h7v6-qvnnLf7MzsHcuteR0Fg1-BDZapwoRjUQRnWLyKNi5JFQK2-sUUx4WbxmGzy-q4h2ujqrLbsbGnLEZPB9tI7WnHXl184pREZDF-stk7shfdwzQfaQp_ZKkbWKtC1U-dbyHoS0XrvFEII82BB5JjWB_H5PZJquLjEDeeDblbyaCF_v4bdgDV5mMiAaHXxkfEUQ1QeIFqHeQ94jRjYJU_Y6LJyKgDzgx68BCAHlwadOpv1QH_-E_S8wE5azo4S4AsrjptJWam3WM07KehDNM6utTrPLQbS_QT8rs061U34AsQexRzbkip3Wz_HH9kdQ9oUE2acfaZ7DnAZaOYccHkY-jAZR39nUKzMsJEJ9wC854vqlMJTfPz8_f0dtQfZVwvIhidB_da2g3L9bHpNRSa9VQSiPOKqIZyL_dOceeBvlbd6u-P_Xje1MiX2Z3CzuyuBAnmbFZHbPamamk6aVrcqoK-paFpVoCpmNnSnzl7Kh9iJNo3PdkmraSuWiqUwtaq0y24lcVLks8qIupJS7omrFWan6og211L7AS06Tsm7n3Nu0C_OQ2RgX6oqmrFqZOXUmF9cXLcTdetlf5uCZvFlv6zGbu5T77bwMEV5yZyPHf6uxZUfd4U_lbcQf27NM6v54yCoOybAn4bNldt3IfI3p5YgTiNNgeVzOOx0mEKeEtXXfrnP4izSDOK3HiCBO20neOvFPAAAA___t_mVQ">