<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/61063>61063</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
Clang++ modules: "Cannot compile this l-value expression yet," then crash
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
csimon-bambecksystems
</td>
</tr>
</table>
<pre>
This might be the same crash as issue #60981 but the diagnostic "cannot compile this l-value expression yet" is new. According to the C++ language status page, as I understand it, Clang 15 should totally be able to compile this l-value expression, as it's just a call to a void-returning member function of a struct, where the empty member function is defined in a module imported by the main translation unit. Anyway even if Clang++ could not compile some expression, it still should not crash... right? The attachment contains the minimal code needed to produce the diagnostic and crash. If I comment out the (already empty) definition of Message::ToChars() in message-rep.cppm, then compilation succeeds - seeming to show that the crash has to do with accessing the definition of ToChars() within the imported module...
[test.zip](https://github.com/llvm/llvm-project/files/10853504/test.zip)
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyUVMtu6zgPfhplQ8Sw5VychRdtigBd_Lu-AC0xsc6viyHSzWSefiA7nek5sxicVYCI_PzdQGR2t0jUq_2r2r9tcJYx5d6wCyluBwwDmf_zg4UCb4ZkH_3H6BiCu40CA4GMBIyBwGTkEZDBMc8ESreH-tQ1MMyyDFmHt5hYnAGltcEYk4BJYXK-oDgGv_1EPxPQH1MmZpciPEiU1uAYIt0reDEmZeviDSQtoGelX5V-BY_xNuONgAVlZpjwRkqfC513mKOlzILRgpPy77mMQ7MHHtPsLUgS9P5R5OBQ2KT_IvbELnBHhh8zCyAY9L7sInwmZ7eZZM6xkA0UBspwnaORoipdAYElz2ahcx8pr0ZSmOTxr3HHYOnqIllwERBCsrMncGFKWcjC8FiWA7oIkjGyx2Vvjk4qeImPOz6APimCu67an66ZRf33HDiFX2U6ARbn_ZdZy3jJuqoqyKUGqr3Ax0iAImjGQLHgRUEXeSXmogvowSRLEIksFcthysnOhn4tR4lpxYf3K7wXagtkevZI6Q59JrSP1S6lT6s97svb_xFzyb99Ue3LRzqPmFnprgy6CGF93WaaKjNNoWiUkeLTg9U6no0hsgxbYKLwbByP6Q4y4kpkLfyIXJ5sgruTEdCYYl2ZL7J-4vUzlTJeAhu_JbkmW1WVqt9U_aL2r0Is1Z9uUvs3pbtRZOKiS1-UvtycjPNQmRSUvnj_-fWznXL6QaVbl6vzxEpfmrrbt_t6p_Tlb0R9Wr-ysX1rT-0JN9Q3h-PxUHfNTm_Gfne8tl2NnaWm63bHtj6Ypuna07XW1-Fk6o3rda3bWuuu6Zr9TlcHo2uq21M37I4HrHdqV1NA56tCq0r5tlmOQ39o6kO78TiQ5-XwaB3pvl4OpXW5Q7lfpAzzjdWu9o6F_0ERJ57671VenSvelOty_o3rci4HZi1ACXQzZ9__ts8L82L0ouyvAAAA__8ZKtAf">