7 Commits

Author SHA1 Message Date
Timm Bäder
369d3a7380 [clang][Interp][NFC] Remove ExprScope
It's been nothing but a LocalScope for a while.
2024-07-09 11:52:40 +02:00
Timm Bäder
dd2bf3b840 [clang][Interp] Redo variable (re)visiting
Depending on the circumstances we visit variables in, we need to
be careful about when to destroy their temporaries and whether to
emit a Ret op at all or not.
2024-07-09 10:43:35 +02:00
Timm Bäder
f926e19aa9 Reapply "[clang][Interp] Fix init chain in local initializers"
This reverts commit 2dda8a2650927e4b0fbb459507684455e196d9a9.
2024-07-05 12:16:18 +02:00
Timm Bäder
c49c386caa [clang][Interp] Reject StmtExprs containing return statements 2024-07-02 12:15:24 +02:00
Timm Bäder
030ea6d38b [clang][Interp] Only check toplevel declarations 2024-07-02 11:50:41 +02:00
Timm Bäder
56a636f2d2 [clang][Interp] Implement StmtExprs 2024-06-30 09:28:56 +02:00
Timm Baeder
468d668c5c
[clang][Interp] Merge ByteCodeExprGen and ByteCodeStmtGen (#83683)
We currently cannot generate bytecode for statements once we've decided
we want to generate bytecode for expressions. This is a problem for `StmtExpr`, which is
an expression that requires us to evaluate a statement.

Merge ByteCodeExprGen and ByteCodeStmtGen, so we don't do that distinction anymore. Rename them to Compiler at the same time.
2024-06-27 14:43:39 +02:00