<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/70214>70214</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[clang] not supporting floating point type as non-type template argument
</td>
</tr>
<tr>
<th>Labels</th>
<td>
clang
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
yxsamliu
</td>
</tr>
</table>
<pre>
The following code compiles with gcc trunk but fails with clang trunk:
`#include <stdio.h>
template <float f>
void func_template()
{
printf("\nValue: %f\n", f);
}
void test()
{
func_template<1.f>();
}`
https://godbolt.org/z/hv9K35oPK
It seem this should be allowed for c++20
https://en.cppreference.com/w/cpp/language/template_parameters#Non-type_template_parameter
The issue was first reported at https://github.com/ROCm-Developer-Tools/HIP/issues/3338
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJx8U12PmzoQ_TXmZZQIxpCEBx42yUV3tdK9q2rV15WBMbg1GPkj6fbXVybJNv18SYzPzDnjMzPCOdVPRBUr9qw4JiL4wdjq7YsTo1YhaUz3Vr0MBNJobc5q6qE1HUFrxllpcnBWfoC-bcHbMH2GJniQQukr0Gox9ReI8QeWHll6-92kDLmaWh06AsYPznfKrAfG_7kEeBpnLfyCSW2EB_mOnYzqQIapfb1FMdwxLK_U2_3lAAAwWzV5ucDIisP0UehAjD8Aw0LGi3iPB5Axne9vDMf7Whc5T87_XuXHQvghWy-VXmLvKTfpPevg_eyiK1gzrHvTNUb7tbE9w_orw3o4lU-8MM9P90mPHhzRCH5QDtxggu6gIRCxOdSBNBZahnuGe0zhz2o0rdt5tiTJ0tTSujUjw_rMsG7nmWEd2xZETwzr28NeZ2HFSJ6sY8j_M9PKv830-it8rxonRzkXCM7CgVTWebA0G-upA-HhJw-UH0JzLebD_4dxdaQTaTOTXb0Yox3D-t_HZ4b1whk_Oee7pKt4V_JSJFRlm3KHeb7d5slQpYKnErus67q8aBpMG7nN82yDsqGiyWSiKkyRZykWWc5Lnq93kjLatuW2TEUrZcrylEah9Frr0xh7kyzK1TbFLE-0aEi7ZXUQl1FfhuyY2CrGr5rQO5anWjnvvjN45fWyb5eM4giT8eDCHG2JC7ZMezzMRk0eos0gHExXy-F9M4Ttw0iTT4LV1V-sjNLXv9VszSdq_b2Hy2O-BQAA___thkI3">