From 6d362e0ffe78791036af05e4224daebaf7cb3f81 Mon Sep 17 00:00:00 2001 From: metagn Date: Sat, 14 Sep 2024 05:20:30 +0300 Subject: fix regression with uint constant losing abstract type (#24105) fixes #24104, refs #23955 The line `result.typ = dstTyp` added in #23955 changes the type of `result`, which was the type of `n` due to the argument passed to `newIntNodeT`, to the abstract type skipped `dstTyp`. The line is removed to just keep the type as abstract. --- compiler/semfold.nim | 1 - 1 file changed, 1 deletion(-) (limited to 'compiler') diff --git a/compiler/semfold.nim b/compiler/semfold.nim index b2105830e..80144ccc0 100644 --- a/compiler/semfold.nim +++ b/compiler/semfold.nim @@ -423,7 +423,6 @@ proc foldConv(n, a: PNode; idgen: IdGenerator; g: ModuleGraph; check = false): P if dstTyp.kind in {tyUInt..tyUInt64}: result = newIntNodeT(maskBytes(val, int getSize(g.config, dstTyp)), n, idgen, g) result.transitionIntKind(nkUIntLit) - result.typ = dstTyp else: if check: rangeCheck(n, val, g) result = newIntNodeT(val, n, idgen, g) -- cgit 1.4.1-2-gfad0