aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/ir.c
diff options
context:
space:
mode:
authorlemon <lsof@mailbox.org>2026-04-13 19:25:11 +0200
committerlemon <lsof@mailbox.org>2026-04-13 19:30:01 +0200
commitddbd42e66cc71b470730037d76f4f267e98d8d40 (patch)
treeaae9ff541b3e0690e23e391bb2e5e8927d34bf38 /src/ir.c
parent36143af2748b6fcae02ca320baaac417d77ebe58 (diff)
C99 complex types MVP
Missing: static eval of complex values, Silly inefficient implementation of equality comparisons between them The whole thing is pretty inefficient without proper aggregate mem2reg anyway
Diffstat (limited to 'src/ir.c')
-rw-r--r--src/ir.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/ir.c b/src/ir.c
index c32ff4d..4639b86 100644
--- a/src/ir.c
+++ b/src/ir.c
@@ -127,6 +127,7 @@ newxcon(const IRCon *con)
IRType
mkirtype(Type t)
{
+ if (iscomplex(t)) t = complex2struct(t);
if (t.t == TYVOID || isscalar(t))
return (IRType) { .cls = type2cls[scalartypet(t)] };
assert(isagg(t));