<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/62529>62529</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
-frelaxed-template-template-args: "error: pack expansion used as argument for non-pack parameter of alias template" with constrained alias template
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
ecatmur
</td>
</tr>
</table>
<pre>
Motivation:
```c++
#include <boost/hana/type.hpp>
template<class> requires(true) using U = int;
auto t = boost::hana::template_<U>(boost::hana::type_c<char>);
```
Reduced:
```c++
template<class> requires(true) using U = int;
template<template<typename ...> class, class> struct S {};
template<class T> S<U, T> f();
auto t = f<int>();
```
compiled with -frelaxed-template-template-args gives:
```
<source>:2:31: error: pack expansion used as argument for non-pack parameter of alias template
template<template<typename ...> class, class> struct S {};
```
(we need -frelaxed-template-template-args for other reasons)
Workaround: use `std::enable_if_t` to constrain alias template instead.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJy0VE2PpDYQ_TXFxWoEZeiGA4eenulbLtmschxVQwHOgk38MbPz7yPDbG-nM9IckkiWKJvn9_yeSkXOqUEzN1A-QPmYUPCjsQ235Odgk4vp3ppfjFcv5JXRII-QPUJ2hH22rRbwIa7tFKXS7RQ6FiBPF2OcBzyPpAnw7N8WTsdlAfm0oT3Py0SeQZ7aiZwD-SQs_xmUZQdYeRsYsBbBKT2IrwLko1Dag3wXo-CN8OvxpiSPII-r2Fr9oH8GefoaRbH6GPe28HMbHzGSXXH1VeNqc9v-yl1oufskhX_p6-b6bfm2sKaZRZqmkXBjxpO4SjhvQ-vFFwGHBzg8fsS3YsVvEf1lTQVP264HrG5932Tbgzytz3u6w9xl05p5URN34lX5Uex6yxN95273Q_5nQXZwYlAv7P4Z5PtWnpwJtuWoKo8I8ihzkEfB1hobi4Xab4K_L6SdMloEx50gJ8gOYWbtRW-s0EbvVtxClmb2bIXpBU2KnLiG8r9Efm8Hq1cWmrn7PJf4cONHtsIyOaNdjHxl-d3Yb2RN0LH_omMB-8z5buti1nSZ-Fn1zx72mfBGtEY7b0npO8tCaeeZujTpGtnVsqaEm3xfybzI93mZjE3PpeSu2rdUHvhQZFVVYF321HYSZZ9johrMUGZlJvMas7xML31ZHKq-yOui6CgjKDKeSU3pNL3MqbFDopwL3OyxxDqZ6MKTWycOouZXsf4ExDiAbBPv7C5hcFBkk3Le_WTxyk_cfBZizAcQ__tmQdy6-xptJPobJAl2akbvl7W38Qx4HpQfwyVtzQx4jk7eP7vFmj-4jRNy9e8Az2s-fwUAAP__SkC9Jg">