<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=http://email.email.llvm.org/c/eJzNVMFu2zAM_Rr7QtRw5cSJDz60yQoMO6zAil0HWWZsbbJliHKD9OtHKW2SrS0wYMAwQ4ktUnx8eqTU2PZQexwmIz0mxcYfJhzlgPCQFB-SfJvkN8qOCicPXwZpzFfpICm2kIg16Se0O_54SETFxk2wn4x69GwOo7g94hz_L3KdAM-5Hq1uYXIxeP0APiKvngGAH_LSa_VNEqELa8i3SXHDg5g0mxmW6WwgIDDoRfpj9PNqZWd_pLyB08fJi2NrzrRX23f4v6HVL_xZOPLsFOX_uBEGhkHqkXO_Iveyg_KYF7jcdzxAGTl2IFXoBwrsOqWAEAl6dAhyaHQ3a394M2Hv_USBV8TqbNtY4zPrOp498e9-XbX3JD_Jy6Cr83M0fPQh4UDge-ljfk3gdNd7lgocfkflNZP0PYKyLYIdL3gxZUnRt5tHXsjOSTpW3KN7hpws6eDg3jwwgnNIkx1baNDvEccY7PcWXhqBQPLWR-vB7qIzFBBCb8AVz2eCETXb3SkCqLezCYgwWI6lCZWWhk9OGygcU9gQkr2vH6LJNNfgTiXilkfr5I5LdheSZGFzrGyLLhFFmYlMhLiI8jng7jVh0CJZ3mZZliy3YB3o3b8SJqR-JQqX8c_USNu6aKuikqmcfW9d_UM76uWgXTo7U__WZpxlbjJlB54Y8_jyupqcDa3CU000Y1ByWZSLPO3rvBCNLCt5LcqdXMnrcr1SxWqZLwtVls1CpEY2aKhm9RIhRtxDhOBvVjL9ewa6Frngka_EdV4WVVZiXhVyoVp-V43CZJEjH12TBZxwglJXR8hm7oidRpOns5PvGN2NiJEwM_TaG6wvhQ83leZuYcljDeLN5fhyYAM-xtrauevf7I13uz-N26rjnn4CwmkFtQ>53640</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            template is considered more constrained even though function parameters are not of the same type 
        </td>
    </tr>

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

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

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

<pre>
    template<typename T>
concept SmallVar = (sizeof(T) <= sizeof(int));

template<SmallVar T>
void print(T t) {
    static_assert(std::same_as<T, int>);
    std::cout << t << std::endl;
}

template<typename T>
void print(const T& t) {
    static_assert(std::same_as<T, int>);
    std::cout << t << std::endl;
}

int main() {
    print(6);  // clang accepts, gcc sees here ambiguity
}

https://godbolt.org/z/P89dPsaKa

-----------
It seems that gcc is right in rejecting the code on ambiguity, as the function parameters that positionally correspond between the two templates are not of the same type - thus neither template should be more specialized than the other.

https://eel.is/c++draft/temp.func.order#6.2.2:
Otherwise, [...] or if the function parameters that positionally correspond between the two templates are not of the same type, neither template is more specialized than the other.

</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzNVE1v2zAM_TX2hajh2PlwDj60yQoMO6zAil0HWWJsbbJliHKD7NePktskW1tgp2GGYlmk-N4TSaWx6lR77EcjPCblzp9GHESP8JiUH5J8n-S30g4SRw9femHMV-EgKfeQFBXpn2gP_PGYFFs27oL9bNSDZ3MY5d2MM7-vuM6AF64nqxWMLgZXj-Aj8uYZAPghL7yW3wQRurCHvErKWx7EotnMsCxnBwGBQa_o5-jn3dJOfpa8g_PH2YuDMhfZm_07-t_I1W_6OXHk2Vms_8eDMDD0Qg_M_UrcywnWMy9wue95gDRiaEHI0A8U1LVSAiESdOgQRN_odtL-9CZh5_1IQVfEaq1qrPGZdS2vfvLvodqqBxKfxHXQzeWZDR99IOwJfCd85NcETred51SBw-8ovWaRvkOQViHY4UoXSxYUfYdp4I3sHIXjjHt0z5CjJR0c3JsnRnAOabSDggb9EXGIwf5o4aURCAQffbAe7CE6QwEh9Abc8HoiGFCz3Z0jgDo7mYAIveVYGlFqYfjmqCBhprAhJHs_f4gm01yDe5kUdzyUEwcu2X0gycLhOLMKXVKU66zIihAXUT4H3KMmDLlIVndZliWrPVgH-vCvEhOoXyWFy_h32UhVXaptuRWp195gfY0QrpzmY3NsBItX0HGXswGfokg7td2bh3y3jOnkTP1H97L4qcmk7XlhzNPLdDM6GzqQl5powlCgVble5mlXi81mkwt5WOXIc5VXq0otlvliVeULqQ6L1IgGDdVclKQoBjxChOBvLlCq6yIveOSbYpGvy222xnxbiqVUPG8bickyR77PJgs6wrVKXR0lNVNL7DSaPF2c_Mej2wEx0jG-mDg1rv6hHXWi1y6N5HUU_wuBwPBj">