<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/61953>61953</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            invalid use of 'this' outside of a non-static member function
        </td>
    </tr>

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

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

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

<pre>
    [source code](https://godbolt.org/#z:OYLghAFBqd5QCxAYwPYBMCmBRdBLAF1QCcAaPECAMzwBtMA7AQwFtMQByARg9KtQYEAysib0QXAEx8BBAKoBnTAAUAHpwAMvAFYTStJg1DIApJIBCZ86SX1kBPAMqN0AYVS0AriwYSA7KQuADJ4DJgAct4ARpjEEgCspAAOqAqEjgzuXj7%2ByanpAiFhkSwxcVyJtpj2GUIETMQEWd6%2BXAFVNQJ1DQRFEdGxCTb1jc05bcM9fSVlCQCUNqiexMjsHGYAzKHIXlgA1CYbro4KBMSYrIfYJhoAgpvbu5gHR1SeDJ3MtFc393c7TAUCj2ABVMKdfiY/JY7ns4Xskp4orQ8MgQL94Zi9gA3VB4dB7fioCBzKEw25Yyl7U7oEAoJYEF6uQ6uA6SSRg050okksySJks6kEWkgFzfDbkqkHPwAEUhsKpuPxeyiDV50IxUvhmq1QuInnseywVFiAH0CDqtWTLbq4Z40kY9gAxF4yo3VWgEACeSUwEBpdKioXQEDMADZOQRuahUKQ9gQEHgFHNSRLMTbbS6qIdJbb0wq83CAH7Gs0EXkFwvWyuF%2BFUXkSjO6qFymtUlul4iu6XmAMgIMMEPhyPR2PxxPJls5pvS1v3WXTu6/UKMlhMUIV%2Be5uF9tCeRkswV8gASmFotFQewA7iRaOgTPFXAw%2BYu/hT4ZH4%2BCLY3KwRvwAdKqxANuSLYcAstCcPEvC%2BBwWikKgnDMhYVjUksKzPJsPCkFG8EQQsADWIAbBsAHxAAnPEfh%2BFIFEaG0GxhhR%2BicAALLBmi8EhHC8AoIAaLhXELHAsAwIg9IsEkdCxOQlBoFJMlxMAUjSFg2KopgABqeCYFeADyvpwThNCerE/EQFEXGkAODRepwOG2cQXr6VE2jVHhOEKWwgj6QwtD2fhpBYGuRjiEF%2BDnDU2LgtZmCqNU%2B5rAhK5ng5vAolExB2e4WDWWceAsOlCxUAYwAKDpemGYw6UyIIIhiOwUh1fIShqNZujSAYRgoFYVj6HgUT8ZACyoEkDgCPxHAALT6fy000ocMqmKhFiSAhHQTb4EAuGMrSBIO0wDOUeRpFte16CkZ0ZEdpSDFwNhnh5tQjE0HgtHom0vVMoT9HdJ2nD0F0PYDjS3bMXALAoGGrBIkHQZxQU8XsqgABxhtNYZsXswDIMgexSAB/IQLghAkGyGyQ7weFaCmpDERskgARR9F%2BKjGhsVRGgs2xqOsRwHGkEV8SCXBCE8XxAlCfhIniRASAMoiBByRACnSfQxDhKwaxoxjWN7ACjoVABGgm7wmD4EQxD4no/D1aI4hcGxLWKCo6hBZ1pBXtlSTFfzMGkGL3GcPp%2B5K3sqBUCj6OY9juP44TxPuIpGsU5IczU8JCwIBcWBxCS/OC8LovWRLNhSzTBH0yRZEaH4Gio1RGx%2BFjFGSBRqPO1BHAbIj4ucJnMukKJUBy0gatKSrE8ayg3UqWGGiCepmmVQZRm1aZ/7EBZVlBU5gWOaEdmue59i1d5jAEH5AXWSFhjAOFCGRc9MVTQh8WJf%2BtWpd3CGZdlzlcrJWptbIq3AIJ8DKhVXSa8argJag1R2zs7atTdh1PQc9eqrWsJlYaBcxpbSmrNeai0NjLT6mtDaT1PjOEHMDA66Bwb3VOgUTI71xgsK2kwgG1CtrdFGOw/aX0uivW4Z9V69DQa9F%2BjMe6UMYZNXhhwAOQdEKcGjnrbGhtgAEzDCbE2ewSaW3JthDO0taZERrgBUiNjbF2MLrwYugdS4D3LoJSust4DyxAIrfcU9UAp1iFrNgnBdaxwNnPXR%2Bj37GOtrSB6KDEFNWQbIV27UPZ6G9kwX24ClEqJcRwUOBBw6Rw0eE7RUTTYaEMcndWsQKZU3MVXHOTA86UCUUXEAItnFI1cfxdxWdq6kWsXY0ZpF%2Ba9x6f3XiTS6bd0kH3YOMyPELBitvDIIA2JAA%3D%3D)

```
// c++20 mode.
#include <iostream>
#include <functional>

class Test
{
    public:
        void foo(){
            std::cout << "Test::foo()" << std::endl;
        }

        void bar(){
 
            struct defer_t
            {
 using F = decltype(std::bind(&Test::foo, this));    //GCC 12.2 OK,  Clang 16.0 <source>:15:58: error: invalid use of 'this' outside of a non-static member function
                F f;
                
 ~defer_t()
                {
                    f();
 }
            }defer = {std::bind(&Test::foo, this)};
 }
};

int main()
{
    std::cout << "Hello world\n";

    Test test;
 test.bar();
}

```

**Q: who is right ?**
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJykV0mTqjy__zT0hnq6mMVFLxJIABEREAE3t5hkFJBBsBf3s99S-_QZnnMXb70pKpD_-PsPpJJwGIqsSdMPgocEL7-F05i3_UcfFkna1FNRhU32FrXJ_SEwtFMfp2TcJinBywQj5uPYDQQLCAYTDM7aJGrr8b3tsyeB_SRYYAbbLAcYXhPekhYQzPsAGtIF2gncAkxbUgzCPZKA8TnD0QArYM14NCx4B3a21kcrQOA-FBFl-QAtIoRAb2FzAMAFajcD4wZwcHDGTUbLGug2GpROouD4dAX3wLjuKBAcHQr0xRw4YKVbE5A3nLzJQDxywO5KhDJp6AAwr-CKyuxz8ssVwfAMvIdNBwqcV868xMf7ZuxKRnE1dDAs5CXCU8YH-LizNrRs2RglyiIdIrqMKT6KjfXZOdaSJbm7a5EuRjmoSgA-dVXz6wzQUhD1LadDwwl67Rxs8hZk3S2a-Ey1aSeVN6wx4phds_HqAFypZAA8GnpyLgKCwZtg1QycP1Qd1_aWaGTWds2dinUG2CPkErg6F60EP3U0M3xwr1fuqkWg3QQIC5MlTEBwHDujeKqtquHubKpBqJBXZfjzLEfVtVL3M0BuPujdtF_SeyEfeUpb3Ft-udLWpDXNkN7nIy6ASknydfQO2-jKnTiqCtYZWDB3b9mjlyEgpY47I9gletH6FpINIJ9My57C3NWtdWYhNcPqzrG3xiGKHOGqJZsoouaryEpAXSkDhfwKzzfvPuFnsrHrV05pCld8v4xuPdVcMQn-BRiZZhhon9_3NrNflv2mHvju5tA31vMPk0Aw2NWNOjdc7fi0k_ITXo9SalfDfBQz4FxwO2IrncGqsEMzO-yxD-anaDARDM4P3EnlnmtpG7D6bN9mkOjXBewmZxvEYBileI9u0lMEzl5R6VkjG3lwLN1q0D_3m2EvVVgRkWUNQPY0EMEBqAsAzR6d81dwGkahQilLnttPQhEDsN3CSyGiXJVE0Gog3OY-2qpgALOWrbUBVYm0mFYNW7wx6sUAbungjNHbLgPwmkoBToF8v3XzId9JaY8IBiMLI1-pgCnbaTebChNbfi8cEVMe1dxEujdnpWDNo8yc8w4GymSXBXqlX25kl9lm4-kiXXfuk8T3INf5JuNvoK3RApmU82TPi1MwmLW0uCCYgS536UUJZsG9a5qWF-bs5vRZc_Lr7jSVDgjsrMXBsRTUzD2IJyDdW1TJmbRfVAC2B-F8pyiqjY3rRc9x4YBctQ4Rh8CkGL0DNZOaZdNN7Q6PKS1I1Yk6oaRzZDzv8ibnR6tElJqNanuhbkejPazVZMM0MoWpfSCXDhsZPtiCVlF6qFWqdVosV_SHawbgko-74DT4wyxrRpYuDoAEgzXrsZlVyl25W6s5xaF06WRkD1UGbHv9ypReKvlwtJVsYJarOdizqlToKDqSDyUk-guopXOuNYUNHGC0BYR3G0iNc7YWOdfncGmX0tutgFS2RwCV7LKaLzKHrEXmmpZgsEyHGpfHyrL1dKkVcniiO-iPtXPA509DqZQtq8T77lUhnR2u0JVKwQzW5bTnuMOyn7ROGVxeiz9dcSPNGow9uEgOwWBTErftzbO3u9z5PECVutsnFKqcUrS0rSyvTi2x4kD7ujdpqIJIK7kp3jTGVOkbF96pLBx1p0dieM9Y9-opSiGl3eVytE72hQ5PBINXCJ6ONXT5zDNDlFymlF8XdMKXAKk88D0H5yUwsaTY8do4Hqxc9Dbnp-vR6xJWUk5J_VnH_cbrxki7skDbiLKeH30nFMM-24QZbTOfwyocD0lO7614nV57b9jUQQjjpYucS79Lw4LalduDcBnl8EDvSxOphgwEAc4RezQz96Ct6CUbdKaaM4WWxj7BijkTDA59aipuHndaH4W1bIVfNS-NVHCN4LTz83wGppUgPVbKpo-UfMwA-pSlCDHp7IQeuxlz2aTG8ITsPoNusSsjzBjbfg6mLHE4md22G2caRk6-L0Drz7G7dkFHF7jfZQ1MwmXeNXv_tUuU7Eoxx96Bgi4jvPOsSDsyK3d_EpR1NfsMJ9Xouont2TUhnAV7plK0st3DIQiRETeJN1j6yWWNo6-aByAKruS6PgLa2GCNjs9LsnjJVai8wQ-oU_cKNVwvwpn1i4MjRAlVqWxgGvc92sJivMmaBpgNAATDs_LXtCYomaDA1yxQX89r-Tw2kDHBQIKBDEVe2iR9_8FjiyaupyQlCVYq2mHs0_BCsOhv7PPUxGPRNmH9U-A5x3U4DOQhHcYv6gq-PkiSJLspqov4cXz5Jj3GrS0S8ty2BCM-4P-q8WMMY_JQY0HcTuMDAMFKJMEwT0dPxk99hvkh8K2VNklNsH_YJVbyr8h_QxOF_Z9o_gaqn-KRTNJz2v_P-G_-T91pKJqMxCTBymSSxvV471KCEb_xRUWTPP0JfwQkkWNeDM-o1gQLn1afNVQkiaSZd4Y09YcUKdVhk5G08E49gn-dGx-lYQHNEyzgRYIFZNr3bf_4KJpbWBcJOQ0p2Z5Jglm93KzIdhqHInlSQ7Jpm3-GMRyLmLyklyjtyR91_3ewj4HJ87-y_J2MF_V_f2Trld2_i_6tA36M85fmt5_vMv5uQn46emacWMH_JNMr-S_Gf6W-5qIZyUtYNL9G8hvy_69n1bSuW3Ju-zoheKkhGOYPyw_lBzpyfEL8YfKxev_ZmN86v7fxn3_818_7eKxH6ee8JYuB7Issf4DCL9Zb8sEma3YdvqUftCBSK5pZiexb_pFSCR2ma46NQ54-p6t1fOZ4IRYTVjhzdCi-FR8MxbAUR_G0wK459l0QQpENRSFdpQwfCgLBUeklLOr3ur5dHleVt2IYpvRDoNc8-1aHUVoPz8sQwzTpTD6Zj5zw8lv_8dD5J5qygeCouhjG4aeVsRjr9OO_7uS3qa8__rhWFWM-Re9xeyEY_PD39fqn69syjUeCwU-UA8HgZxT_FwAA__8XxSun">