nim-lang / Nim

Nim is a statically typed compiled systems programming language. It combines successful concepts from mature languages like Python, Ada and Modula. Its design focuses on efficiency, expressiveness, and elegance (in that order of priority).
https://nim-lang.org
Other
16.63k stars 1.47k forks source link

Failed to bootstrap devel branch compiler on i386 #24347

Closed jangko closed 1 month ago

jangko commented 1 month ago

Description

On i386 system, the devel branch of nim compiler cannot be built using csources_v2.

Nim Version

devel branch

Current Output

Nim Compiler Version 1.9.1 [Linux: i386]
Compiled at 2023-01-02
Copyright (c) 2006-2022 by Andreas Rumpf

git hash: 7f6681b4c4ccc0dc43fd256280be4c3ad3c773e5
active boot switches: -d:release -d:danger
deps.cmd: git checkout -q bd9bf4eaea124bf8d01e08f92ac1b14c6879d8d3
iteration: 1
bin/nim c  --skipUserCfg --skipParentCfg -d:nimKochBootstrap --nimcache:nimcache/r_linux_i386 -d:release --skipUserCfg --skipParentCfg --warnings:off --hints:off --noNimblePath --compileOnly compiler/nim.nim
/home/runner/work/nimbus-build-system/nimbus-build-system/nim/compiler/ccgtypes.nim(1020, 14) Error: type mismatch: got <string, name: Rope, len: BiggestInt, void>
but expected one of:
template addArrayTypedef(builder: var Builder; name: string; len: int;
                         typeBody: typed)
  first type mismatch at position: 3
  required type for len: int
  but expression 'len = n' is of type: BiggestInt

expression: addArrayTypedef(typedef, name = result, len = n) do:
  typedef.add(e)
FAILURE

Expected Output

no error, compiler successfully built.

Known Workarounds

No response

Additional Information

https://github.com/status-im/nimbus-build-system/actions/runs/11473132970/job/31926848774

narimiran commented 1 month ago

Seems to be introduced by https://github.com/nim-lang/Nim/pull/24330, @metagn.