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

    <tr>
        <th>Summary</th>
        <td>
            Missing NVRO on Clang > 12
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
      </td>
    </tr>

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

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

<pre>
    The following piece of code stopped compiling since Clang 12:

```c++
struct Args
{
    Args() = default;
    Args(const Args&) = default;
    Args(Args&&) = delete;
};

Args makeArgs() { Args a; return a; }

void foo()
{
    auto a = makeArgs();
}
```

Log:
```
<source>:8:34: error: call to deleted constructor of 'Args'
Args makeArgs() { Args a; return a; }
                                 ^
<source>:5:5: note: 'Args' has been explicitly marked deleted here
    Args(Args&&) = delete;
    ^
```

It does work on Clang <= 11 or GCC, so I wonder whether it is a bug/regression or not.

[Link to Godbolt with the example](https://godbolt.org/z/7xEsM6b5r)


</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJylVNFu2yAU_Rr8crXIxnGcPPihTdKqUrtJ07R3bK5tFmIswE27r9_FTpqkq7RNswCDOdx7zgFcGvlafGsRaqO1OaiugV5hhWBqqIxEcN70PUoa7Hulw7xTHc2vtaB-wll6w-INi0_tIp5KxfhtKONX5-1QebixjTvC8uMM0DN-5kvGV8DSDUisxaA9S3-HVKZzxzB88Rf4N-QFWKPHNyzLN-f-2IYlsBc7vGSV344RQRAYLPrBdlM_rL9Y_GyUJCfNtO4DqWLwBsTI5DrHFaNrJy8TPJrmbPg7QLp2ZrAVidsSZkk1nVMDaK2xoVMJrYHyTx6ELe2mjTE2bDfj-cQn_y8n4E8Py7YfMs6OFToTdujmghC0wkGJ2AG-9FpVyutXomZ3pOKkpkWL_34Argl9ZPmDB2nQwcHYHZjuePCJe4iWJEDm3a_XjK_BGXggWCfRwqFFT4xAeVDkFpRDw_idxcaic4rC0DLSObu6O9nto-p2YYvujSyN9nBQvgUKRLrFvtfIsg2par3vXTgH_I5KM2FnxoYUP6nmL1v3tCgzez6EYxvJIpWrdCUiTw5i8aSIC4n5_P3rl0tpW7rX0WB18S4RkRnKGf0JaKD18-n1qbfmB1aehhRwQHL8Lst4lkRtkZe8FPWKz5c8LXPM5VymWYUiXtUV5nwRaVGidgVpJ22RKnjMeZzFabLkCY9ni0qWZbJIl0kts9WqZvMY90LpWUgcJEe2GDmQwY4mtXLenScFCWw6xFN8un-tsYUfeuGq1ggdjYyLke4vt9Zv_A">