From 158d59ce4866ffbf1530ebc9e227c4dcf7cd846f Mon Sep 17 00:00:00 2001 From: Tomohiro Date: Tue, 24 Mar 2026 22:34:46 +0900 Subject: [PATCH] fixes #25635; registers module suffix correctly (#25645) `toNifFilename` proc doesn't return correct Nif file path because module suffix is registered with wrong proc. So `moduleFromNifFile` doesn't load the Nif file. --- compiler/nifbackend.nim | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/compiler/nifbackend.nim b/compiler/nifbackend.nim index fa293bbfe3..181a3dc040 100644 --- a/compiler/nifbackend.nim +++ b/compiler/nifbackend.nim @@ -44,14 +44,16 @@ proc loadModuleDependencies(g: ModuleGraph; mainFileIdx: FileIndex): seq[Precomp let suffix = stack.pop() if not visited.containsOrIncl(suffix.string): - let nifFile = toGeneratedFile(g.config, AbsoluteFile(suffix.string), ".nif") - let fileIdx = msgs.fileInfoIdx(g.config, nifFile) + var isKnownFile = false + let fileIdx = g.config.registerNifSuffix(suffix.string, isKnownFile) let precomp = moduleFromNifFile(g, fileIdx, {LoadFullAst}) if precomp.module != nil: result.add precomp for dep in precomp.deps: if not visited.contains(dep.string): stack.add dep + else: + assert false, "Recompiling module is not implemented." if mainModule.module != nil: result.add mainModule