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

    <tr>
        <th>Summary</th>
        <td>
            Consider removing `CallExpr::CreateTemporary`
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            clang:frontend
      </td>
    </tr>

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

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

<pre>
    Filing this issue to track a suggestion made by @cor3ntin in [this comment](https://github.com/llvm/llvm-project/pull/130725#pullrequestreview-2673499083):

> I wonder if we could get rid of `CallExpr::CreateTemporary` and instead
create something like an `OpaqueValueExpr` for the purpose of determining an initialization sequence.
>
> (We should only need some expression with a type, a location, and a value category, afaik)
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJyUUj2P3CAU_DW4eboVBn8WLvb2bpVUaaKkxvBsk8XgA7x7zq-P4BKlTSRL1kPMMDNvRAh6togDqZ9J_VKIPS7OD5_0vFzcugqr0FfF6NQxXLXRdoa46AA6hB0hOoheyBsICPs8Y4jaWViFQhgPIBWVznMbtQVtgdTPGSrduqKNpH4hrFti3ALhZ8KuhF1nHZd9PEm3EnY15v7n97R59wNlJOy67cYQdi05bVlNGE-zx7cdQ_R41_h4Yk3Lq76nHSesT9Q0f_wVPsPDJT-gJ3ggSLcbBTNG8FqBm4A09CKMeX3ffMLx88WjiPgV18154Q_SUBBWgbYholCEnmW-AMGtGJcUjtE3BGET1ZdNvO34TZgdM2NDYXIe4oKw7X5zAdObCiP6VdsEFiknHbUw-qfIUYbkzEo8fTj47YOw7jtCWLJ-Z80BFlFlFYDvm8cQEvih4wIC4rEhYRcQYJzMtHmyCgTckzqQIuLs_JHPJ6FvhPWFGrjqeS8KHMq2KltW1SUvlkGOOJZjKZksESXWqmvarq3bqqpRTnIq9MAoqykvS0ZZWfNTo6qu78ex4007jnwiFcVVaHNKqz05Pxe5TUPJaceqwogRTch9ZEwaYWfCz5N3NqJVhLHUUj_kWoz7HEhFjQ4x_GWLOhocLs4GnZbtcXX3FO8_rLfYvRn-u5NZfvhoZXJwH9ivAAAA__-IexmQ">