From 7c44af4e22ce9f8ef28912f709041b7696714142 Mon Sep 17 00:00:00 2001 From: metagn Date: Mon, 28 Aug 2023 22:41:18 +0300 Subject: [PATCH] properly fold constants for dynlib pragma (#22575) fixes #12929 (cherry picked from commit 6b955ac4af834fb9765b5b2a2588a5feb1de31f0) --- compiler/pragmas.nim | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/compiler/pragmas.nim b/compiler/pragmas.nim index 258836ca38..0df5d2020f 100644 --- a/compiler/pragmas.nim +++ b/compiler/pragmas.nim @@ -330,7 +330,7 @@ proc expectDynlibNode(c: PContext, n: PNode): PNode = # {.dynlib: myGetProcAddr(...).} result = c.semExpr(c, n[1]) if result.kind == nkSym and result.sym.kind == skConst: - result = result.sym.astdef # look it up + result = c.semConstExpr(c, result) # fold const if result.typ == nil or result.typ.kind notin {tyPointer, tyString, tyProc}: localError(c.config, n.info, errStringLiteralExpected) result = newEmptyStrNode(c, n)