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.49k stars 1.46k forks source link

Compiler crash? - Error: unhandled exception: `t.destructor != nil` #22368

Closed adokitkat closed 2 months ago

adokitkat commented 1 year ago

Description

Hi,

if I understand things correctly, the code below crashes the compiler (?).

Error: unhandled exception: liftdestructors.nim(602, 5) `t.destructor != nil`  [AssertionDefect]

Works when compiled with refc instead of orc. The culprit is CellVal = int|float. If it's set just to CellVal = int or CellVal = float, the code works correctly.

import std/[sequtils]

type
    Reactor = ref object
        cells: seq[Cell]

    CellKind = enum
        CellInput, CellCompute

    CellVal = int|float

    CellComputeFunction = proc(vals: seq[CellVal]): CellVal
    CellComputeCallback = proc(val: CellVal)

    Cell = ref object
        reactor: Reactor
        val: CellVal
        case kind: CellKind
        of CellInput: discard
        of CellCompute:
            input: seq[Cell]
            function: CellComputeFunction
            callbacks: seq[ref CellComputeCallback]

proc newReactor*(): Reactor = Reactor()

The code without proc newReactor*(): Reactor = Reactor() also compiles fine. I will post a a longer (and more useful) code in a comment below, this is just the minimal code example I get the error with.

Nim Version

Nim Compiler Version 2.0.0 [Linux: amd64] Compiled at 2023-08-01 Copyright (c) 2006-2023 by Andreas Rumpf

git hash: a488067a4130f029000be4550a0fb1b39e0e9e7c active boot switches: -d:release

Current Output

Hint: used config file '/home/ado_linux/.choosenim/toolchains/nim-2.0.0/config/nim.cfg' [Conf]
Hint: used config file '/home/ado_linux/.choosenim/toolchains/nim-2.0.0/config/config.nims' [Conf]
.........................................................................assertions.nim(34)       raiseAssert
Error: unhandled exception: liftdestructors.nim(602, 5) `t.destructor != nil`  [AssertionDefect]

Expected Output

Hint: used config file '/home/ado_linux/.choosenim/toolchains/nim-2.0.0/config/nim.cfg' [Conf]
Hint: used config file '/home/ado_linux/.choosenim/toolchains/nim-2.0.0/config/config.nims' [Conf]
Hint: mm: orc; threads: on; opt: none (DEBUG BUILD, `-d:release` generates faster code)
10086 lines; 0.090s; 10.48MiB peakmem; proj: /home/ado_linux/hobby/nim/tiny_excel/errors_out.nim; out: /home/ado_linux/hobby/nim/tiny_excel/errors_out [SuccessX]
Hint: /home/ado_linux/hobby/nim/tiny_excel/errors_out [Exec]

Possible Solution

No response

Additional Information

I also get different error, now with a nicer error message, when I change CellComputeCallback = proc(val: CodeVal) just to CellComputeCallback = proc(val: int) or CellComputeCallback = proc(val: float) with everything else using CodeVal = int|float.

Hint: used config file '/home/ado_linux/.choosenim/toolchains/nim-2.0.0/config/nim.cfg' [Conf]
Hint: used config file '/home/ado_linux/.choosenim/toolchains/nim-2.0.0/config/config.nims' [Conf]
.........................................................................
/home/ado_linux/hobby/nim/tiny_excel/errors_out.nim(25, 38) template/generic instantiation of `setLen` from here
/home/ado_linux/.choosenim/toolchains/nim-2.0.0/lib/system/seqs_v2.nim(127, 13) template/generic instantiation of `shrink` from here
/home/ado_linux/.choosenim/toolchains/nim-2.0.0/lib/system/seqs_v2.nim(89, 9) template/generic instantiation of `reset` from here
/home/ado_linux/.choosenim/toolchains/nim-2.0.0/lib/system.nim(938, 18) Error: expression 'default(typeof(obj))' has no type (or is ambiguous)

However I don't know if this one is a bug or is "OK".

adokitkat commented 1 year ago

More meaningful code, change CellVal = int|float to CellVal = int and it works:

import std/[sequtils]

type
    Reactor = ref object
        cells: seq[Cell]

    CellKind = enum
        CellInput, CellCompute

    CellVal = int|float

    CellComputeFunction = proc(vals: seq[CellVal]): CellVal
    CellComputeCallback = proc(x: CellVal)

    Cell = ref object
        reactor: Reactor
        val: CellVal
        case kind: CellKind
        of CellInput: discard
        of CellCompute:
            input: seq[Cell]
            function: CellComputeFunction
            callbacks: seq[ref CellComputeCallback]

proc newReactor*(): Reactor = Reactor()

proc value*(cell: Cell): CellVal =
    if cell.kind == CellInput:
        result = cell.val
    elif cell.kind == CellCompute:
        result = cell.function(cell.input.map(value))

proc update(reactor: Reactor) =
    for cell in reactor.cells:
        if cell.val != cell.value:
            for callback in cell.callbacks:
                callback[](cell.value)

proc `value=`*(cell: Cell, value: CellVal) =
    cell.val = value
    cell.reactor.update()

proc createInput*(reactor: Reactor, value: CellVal): Cell =
    result = Cell(kind: CellInput, reactor: reactor, val: value)
    reactor.cells.add result

proc createCompute*(reactor: Reactor, input: seq[Cell], function: CellComputeFunction): Cell = 
    result = Cell(kind: CellCompute, reactor: reactor, input: input, function: function)
    result.val = result.value
    reactor.cells.add result

when isMainModule:
    block test:
        proc sum(values: seq[CellVal]): CellVal = values.foldl(a + b)

        let
            reactor = newReactor()
            i1 = reactor.createInput(1)
            i2 = reactor.createInput(2)
            c1 = reactor.createCompute(@[i1, i2], sum)
        assert c1.value == 3
juancarlospaco commented 1 year ago

!nim c

import std/sequtils

type
    Reactor = ref object
        cells: seq[Cell]

    CellKind = enum
        CellInput, CellCompute

    CellVal = int|float

    CellComputeFunction = proc(vals: seq[CellVal]): CellVal
    CellComputeCallback = proc(val: CellVal)

    Cell = ref object
        reactor: Reactor
        val: CellVal
        case kind: CellKind
        of CellInput: discard
        of CellCompute:
            input: seq[Cell]
            function: CellComputeFunction
            callbacks: seq[ref CellComputeCallback]

proc newReactor*(): Reactor = Reactor()
beef331 commented 1 year ago
            function: CellComputeFunction
            callbacks: seq[ref CellComputeCallback]

This is invalid, in Nim int or float is a generic constraint, so you have a generic procedure inside of your typedef, you need to do

 type
      CellComputeFunction[T: CellVal] = proc(vals: seq[T]): T
      CellComputeCallback[T: CellVal] = proc(val: T)
      Cell[T: CellVal] = ref object
        reactor: Reactor
        val: CellVal
        case kind: CellKind
        of CellInput: discard
        of CellCompute:
            input: seq[Cell]
            function: CellComputeFunction[T]
            callbacks: seq[ref CellComputeCallback[T]]

Or more likely use a object variant for your CellVal

github-actions[bot] commented 1 year ago

@juancarlospaco (contributor)

devel :-1: FAIL

Output

Error: Command failed: nim c --run -d:strip -d:ssl -d:nimDisableCertificateValidation --forceBuild:on --colors:off --verbosity:0 --hints:off --warnings:off --lineTrace:off  --nimcache:/home/runner/work/Nim/Nim --out:/home/runner/work/Nim/Nim/temp /home/runner/work/Nim/Nim/temp.nim
assertions.nim(34)       raiseAssert
Error: unhandled exception: liftdestructors.nim(602, 5) `t.destructor != nil`  [AssertionDefect]

Stats

  • Created 2023-08-02T18:00:26Z
  • Started 2023-08-02T18:01:03
  • Finished 2023-08-02T18:01:04
  • Duration now
  • Commands nim c --run -d:strip -d:ssl -d:nimDisableCertificateValidation --forceBuild:on --colors:off --verbosity:0 --hints:off --warnings:off --lineTrace:off --nimcache:/home/runner/work/Nim/Nim --out:/home/runner/work/Nim/Nim/temp /home/runner/work/Nim/Nim/temp.nim

IR

Filesize 0 bytes ```cpp ```

AST

```nim ```
stable :-1: FAIL

Output

``` Error: Command failed: nim c --run -d:strip -d:ssl -d:nimDisableCertificateValidation --forceBuild:on --colors:off --verbosity:0 --hints:off --warnings:off --lineTrace:off --nimcache:/home/runner/work/Nim/Nim --out:/home/runner/work/Nim/Nim/temp /home/runner/work/Nim/Nim/temp.nim assertions.nim(34) raiseAssert Error: unhandled exception: liftdestructors.nim(602, 5) `t.destructor != nil` [AssertionDefect] ```

Stats

  • Created 2023-08-02T18:00:26Z
  • Started 2023-08-02T18:01:04
  • Finished 2023-08-02T18:01:04
  • Duration now
  • Commands nim c --run -d:strip -d:ssl -d:nimDisableCertificateValidation --forceBuild:on --colors:off --verbosity:0 --hints:off --warnings:off --lineTrace:off --nimcache:/home/runner/work/Nim/Nim --out:/home/runner/work/Nim/Nim/temp /home/runner/work/Nim/Nim/temp.nim

IR

Filesize 0 bytes ```cpp ```

AST

```nim ```
1.6.0 :+1: OK

Output

``` ```

Stats

  • Created 2023-08-02T18:00:26Z
  • Started 2023-08-02T18:01:07
  • Finished 2023-08-02T18:01:08
  • Duration 1 minute
  • Commands nim c --run -d:strip -d:ssl -d:nimDisableCertificateValidation --forceBuild:on --colors:off --verbosity:0 --hints:off --warnings:off --lineTrace:off --nimcache:/home/runner/work/Nim/Nim --out:/home/runner/work/Nim/Nim/temp /home/runner/work/Nim/Nim/temp.nim
1.4.0 :+1: OK

Output

``` ```

Stats

  • Created 2023-08-02T18:00:26Z
  • Started 2023-08-02T18:01:10
  • Finished 2023-08-02T18:01:11
  • Duration 1 minute
  • Commands nim c --run -d:strip -d:ssl -d:nimDisableCertificateValidation --forceBuild:on --colors:off --verbosity:0 --hints:off --warnings:off --lineTrace:off --nimcache:/home/runner/work/Nim/Nim --out:/home/runner/work/Nim/Nim/temp /home/runner/work/Nim/Nim/temp.nim
1.2.0 :+1: OK

Output

``` ```

Stats

  • Created 2023-08-02T18:00:26Z
  • Started 2023-08-02T18:01:26
  • Finished 2023-08-02T18:01:26
  • Duration now
  • Commands nim c --run -d:strip -d:ssl -d:nimDisableCertificateValidation --forceBuild:on --colors:off --verbosity:0 --hints:off --warnings:off --lineTrace:off --nimcache:/home/runner/work/Nim/Nim --out:/home/runner/work/Nim/Nim/temp /home/runner/work/Nim/Nim/temp.nim
1.0.0 :+1: OK

Output

``` ```

Stats

  • Created 2023-08-02T18:00:26Z
  • Started 2023-08-02T18:01:39
  • Finished 2023-08-02T18:01:40
  • Duration now
  • Commands nim c --run -d:strip -d:ssl -d:nimDisableCertificateValidation --forceBuild:on --colors:off --verbosity:0 --hints:off --warnings:off --lineTrace:off --nimcache:/home/runner/work/Nim/Nim --out:/home/runner/work/Nim/Nim/temp /home/runner/work/Nim/Nim/temp.nim
0.20.2 :-1: FAIL

Output

``` Error: Command failed: nim c --run -d:strip -d:ssl -d:nimDisableCertificateValidation --forceBuild:on --colors:off --verbosity:0 --hints:off --warnings:off --lineTrace:off --nimcache:/home/runner/work/Nim/Nim --out:/home/runner/work/Nim/Nim/temp /home/runner/work/Nim/Nim/temp.nim /home/runner/work/Nim/Nim/temp.nim(19, 17) Error: invalid type: 'CellVal' in this context: 'proc (): Reactor' for proc ```

Stats

  • Created 2023-08-02T18:00:26Z
  • Started 2023-08-02T18:01:53
  • Finished 2023-08-02T18:01:53
  • Duration now
  • Commands nim c --run -d:strip -d:ssl -d:nimDisableCertificateValidation --forceBuild:on --colors:off --verbosity:0 --hints:off --warnings:off --lineTrace:off --nimcache:/home/runner/work/Nim/Nim --out:/home/runner/work/Nim/Nim/temp /home/runner/work/Nim/Nim/temp.nim

IR

Filesize 81.94 Kb ```cpp #define NIM_INTBITS 64 #include "nimbase.h" #undef LANGUAGE_C #undef MIPSEB #undef MIPSEL #undef PPC #undef R3000 #undef R4000 #undef i386 #undef linux #undef mips #undef near #undef far #undef powerpc #undef unix #define nimfr_(x, y) #define nimln_(x, y) static N_INLINE(void, initStackBottomWith)(void* locals); N_NOINLINE(void, nimGC_setStackBottom)(void* theStackBottom); N_LIB_PRIVATE N_NIMCALL(void, systemDatInit000)(void); N_LIB_PRIVATE N_NIMCALL(void, systemInit000)(void); N_LIB_PRIVATE N_NIMCALL(void, NimMainModule)(void); static N_INLINE(void, initStackBottomWith)(void* locals) { nimGC_setStackBottom(locals); } void PreMainInner(void) { } int cmdCount; char** cmdLine; char** gEnv; void PreMain(void) { void (*volatile inner)(void); inner = PreMainInner; systemDatInit000(); initStackBottomWith((void *)&inner); systemInit000(); (*inner)(); } N_CDECL(void, NimMainInner)(void) { NimMainModule(); } N_CDECL(void, NimMain)(void) { void (*volatile inner)(void); PreMain(); inner = NimMainInner; initStackBottomWith((void *)&inner); (*inner)(); } int main(int argc, char** args, char** env) { cmdLine = args; cmdCount = argc; gEnv = env; NimMain(); return nim_program_result; } N_LIB_PRIVATE N_NIMCALL(void, NimMainModule)(void) { { } } ```

AST

```nim ```
#7739e2342 :arrow_right: :bug:

Diagnostics

ringabout introduced a bug at 2022-09-23 19:05:05 +0800 on commit #7739e2342 with message: ``` defaults to ORC (#19972) * defaults to Orc * bootstrap using refc * use gc * init orc defines * unregister orc * fix gc * fix commands * add prepareMutation for orc * enable deepcopy for orc * prepareMutation * more fixes * some cases * bug #20081 * partial fixes * partial fixes * fixes command line * more fixes * build Nim with refc * use gc * more fixes * rstore * orc doesn't support threadpool * more shallowCopy * more fixes * fixes unsafeNew * workarounds * small * more fixes * fixes some megatest * tcodegenbugs1 refc * fxies megatest * build nimble with refc * workaround tensordsl tests * replace shallowCopy with move * fixes action * workaround * add todo * fixes important packages * unpublic unregisterArcOrc * fixes cpp * enable windows Co-authored-by: xflywind <43030857+xflywind@users.noreply.github.com> ``` The bug is in the files: ``` .github/workflows/ci_docs.yml compiler/commands.nim compiler/nim.nim compiler/options.nim koch.nim lib/system/iterators.nim nimsuggest/sexp.nim testament/categories.nim testament/important_packages.nim tests/assign/moverload_asgn2.nim tests/async/tasync_traceback.nim tests/ccgbugs/t13062.nim tests/ccgbugs/tassign_nil_strings.nim tests/ccgbugs/tcodegenbug1.nim tests/ccgbugs/tdeepcopy_addr_rval.nim tests/ccgbugs/thtiobj.nim tests/ccgbugs/tmissinginit.nim tests/ccgbugs/tmissingvolatile.nim tests/collections/tseq.nim tests/concepts/t3330.nim tests/concepts/tusertypeclasses.nim tests/destructor/tatomicptrs.nim tests/errmsgs/t10376.nim tests/exception/tcpp_imported_exc.nim tests/generics/tgeneric3.nim tests/generics/tparam_binding.nim tests/gensym/tgensymgeneric.nim tests/ic/config.nims tests/iter/tshallowcopy_closures.nim tests/macros/tstaticparamsmacro.nim tests/magics/t10307.nim tests/magics/tmagics.nim tests/manyloc/keineschweine/keineschweine.nim.cfg tests/manyloc/keineschweine/lib/estreams.nim tests/metatype/tmetatype_various.nim tests/metatype/tstaticparammacro.nim tests/metatype/tstaticvector.nim tests/misc/taddr.nim tests/misc/tnew.nim tests/misc/trunner_special.nim tests/misc/tunsignedconv.nim tests/modules/tmodule_name_clashes.nim tests/niminaction/Chapter3/various3.nim tests/objects/t4318.nim tests/objects/tobj_asgn_dont_slice.nim tests/objects/tobjconstr.nim tests/parallel/tconvexhull.nim tests/parallel/tdeepcopy.nim tests/parallel/tdeepcopy2.nim tests/parallel/tdisjoint_slice1.nim tests/parallel/tflowvar.nim tests/parallel/tinvalid_array_bounds.nim tests/parallel/tmissing_deepcopy.nim tests/parallel/tnon_disjoint_slice1.nim tests/parallel/tparfind.nim tests/parallel/tpi.nim tests/parallel/tsendtwice.nim tests/parallel/tsysspawn.nim tests/parallel/tuseafterdef.nim tests/parallel/twaitany.nim tests/parser/t12274.nim tests/pragmas/t12640.nim tests/pragmas/tnoreturn.nim tests/stdlib/mgenast.nim tests/stdlib/tgenast.nim tests/stdlib/thttpclient_ssl.nim tests/stdlib/tjson.nim tests/stdlib/tmitems.nim tests/stdlib/tstdlib_various.nim tests/stdlib/tstring.nim tests/stdlib/twchartoutf8.nim tests/system/tdeepcopy.nim tests/template/twrongmapit.nim tests/threads/tjsthreads.nim tests/threads/tonthreadcreation.nim tests/typerel/t4799_1.nim tests/typerel/t4799_2.nim tests/typerel/t4799_3.nim tests/typerel/ttypedesc_as_genericparam1.nim tests/typerel/ttypedesc_as_genericparam1_orc.nim tests/typerel/ttypedesc_as_genericparam2.nim ``` The bug can be in the commits: (Diagnostics sometimes off-by-one).
:robot: Bug found in 10 minutes bisecting 1626 commits at 156 commits per second.
ringabout commented 1 year ago

!nim c --gc:arc

import std/sequtils

type
    Reactor = ref object
        cells: seq[Cell]

    CellKind = enum
        CellInput, CellCompute

    CellVal = int|float

    CellComputeFunction = proc(vals: seq[CellVal]): CellVal
    CellComputeCallback = proc(val: CellVal)

    Cell = ref object
        reactor: Reactor
        val: CellVal
        case kind: CellKind
        of CellInput: discard
        of CellCompute:
            input: seq[Cell]
            function: CellComputeFunction
            callbacks: seq[ref CellComputeCallback]

proc newReactor*(): Reactor = Reactor()
github-actions[bot] commented 1 year ago

@ringabout (member)

devel :-1: FAIL

Output

Error: Command failed: nim c --gc:arc --run -d:strip -d:ssl -d:nimDisableCertificateValidation --forceBuild:on --colors:off --verbosity:0 --hints:off --warnings:off --lineTrace:off  --nimcache:/home/runner/work/Nim/Nim --out:/home/runner/work/Nim/Nim/temp /home/runner/work/Nim/Nim/temp.nim
command line(1, 2) Warning: `gc:option` is deprecated; use `mm:option` instead [Deprecated]
assertions.nim(34)       raiseAssert
Error: unhandled exception: liftdestructors.nim(602, 5) `t.destructor != nil`  [AssertionDefect]

Stats

  • Created 2023-08-03T04:35:00Z
  • Started 2023-08-03T04:35:52
  • Finished 2023-08-03T04:35:52
  • Duration now
  • Commands nim c --gc:arc --run -d:strip -d:ssl -d:nimDisableCertificateValidation --forceBuild:on --colors:off --verbosity:0 --hints:off --warnings:off --lineTrace:off --nimcache:/home/runner/work/Nim/Nim --out:/home/runner/work/Nim/Nim/temp /home/runner/work/Nim/Nim/temp.nim

IR

Filesize 0 bytes ```cpp ```

AST

```nim ```
stable :-1: FAIL

Output

``` Error: Command failed: nim c --gc:arc --run -d:strip -d:ssl -d:nimDisableCertificateValidation --forceBuild:on --colors:off --verbosity:0 --hints:off --warnings:off --lineTrace:off --nimcache:/home/runner/work/Nim/Nim --out:/home/runner/work/Nim/Nim/temp /home/runner/work/Nim/Nim/temp.nim command line(1, 2) Warning: `gc:option` is deprecated; use `mm:option` instead [Deprecated] assertions.nim(34) raiseAssert Error: unhandled exception: liftdestructors.nim(602, 5) `t.destructor != nil` [AssertionDefect] ```

Stats

  • Created 2023-08-03T04:35:00Z
  • Started 2023-08-03T04:35:53
  • Finished 2023-08-03T04:35:53
  • Duration now
  • Commands nim c --gc:arc --run -d:strip -d:ssl -d:nimDisableCertificateValidation --forceBuild:on --colors:off --verbosity:0 --hints:off --warnings:off --lineTrace:off --nimcache:/home/runner/work/Nim/Nim --out:/home/runner/work/Nim/Nim/temp /home/runner/work/Nim/Nim/temp.nim

IR

Filesize 0 bytes ```cpp ```

AST

```nim ```
1.6.0 :-1: FAIL

Output

``` Error: Command failed: nim c --gc:arc --run -d:strip -d:ssl -d:nimDisableCertificateValidation --forceBuild:on --colors:off --verbosity:0 --hints:off --warnings:off --lineTrace:off --nimcache:/home/runner/work/Nim/Nim --out:/home/runner/work/Nim/Nim/temp /home/runner/work/Nim/Nim/temp.nim fatal.nim(53) sysFatal Error: unhandled exception: liftdestructors.nim(550, 14) `t.destructor != nil` [AssertionDefect] ```

Stats

  • Created 2023-08-03T04:35:00Z
  • Started 2023-08-03T04:35:57
  • Finished 2023-08-03T04:35:57
  • Duration now
  • Commands nim c --gc:arc --run -d:strip -d:ssl -d:nimDisableCertificateValidation --forceBuild:on --colors:off --verbosity:0 --hints:off --warnings:off --lineTrace:off --nimcache:/home/runner/work/Nim/Nim --out:/home/runner/work/Nim/Nim/temp /home/runner/work/Nim/Nim/temp.nim

IR

Filesize 0 bytes ```cpp ```

AST

```nim ```
1.4.0 :-1: FAIL

Output

``` Error: Command failed: nim c --gc:arc --run -d:strip -d:ssl -d:nimDisableCertificateValidation --forceBuild:on --colors:off --verbosity:0 --hints:off --warnings:off --lineTrace:off --nimcache:/home/runner/work/Nim/Nim --out:/home/runner/work/Nim/Nim/temp /home/runner/work/Nim/Nim/temp.nim fatal.nim(49) sysFatal Error: unhandled exception: liftdestructors.nim(482, 14) `t.destructor != nil` [AssertionDefect] ```

Stats

  • Created 2023-08-03T04:35:00Z
  • Started 2023-08-03T04:36:01
  • Finished 2023-08-03T04:36:02
  • Duration now
  • Commands nim c --gc:arc --run -d:strip -d:ssl -d:nimDisableCertificateValidation --forceBuild:on --colors:off --verbosity:0 --hints:off --warnings:off --lineTrace:off --nimcache:/home/runner/work/Nim/Nim --out:/home/runner/work/Nim/Nim/temp /home/runner/work/Nim/Nim/temp.nim

IR

Filesize 0 bytes ```cpp ```

AST

```nim ```
1.2.0 :-1: FAIL

Output

``` Error: Command failed: nim c --gc:arc --run -d:strip -d:ssl -d:nimDisableCertificateValidation --forceBuild:on --colors:off --verbosity:0 --hints:off --warnings:off --lineTrace:off --nimcache:/home/runner/work/Nim/Nim --out:/home/runner/work/Nim/Nim/temp /home/runner/work/Nim/Nim/temp.nim /home/runner/work/Nim/Nim/temp.nim(19, 38) template/generic instantiation of `setLen` from here /home/runner/.choosenim/toolchains/nim-1.2.0/lib/system/seqs_v2.nim(116, 13) template/generic instantiation of `shrink` from here /home/runner/.choosenim/toolchains/nim-1.2.0/lib/system/seqs_v2.nim(83, 10) Error: cannot cast to a non concrete type: 'ptr NimSeqV2[temp.Cell]' ```

Stats

  • Created 2023-08-03T04:35:00Z
  • Started 2023-08-03T04:36:18
  • Finished 2023-08-03T04:36:19
  • Duration now
  • Commands nim c --gc:arc --run -d:strip -d:ssl -d:nimDisableCertificateValidation --forceBuild:on --colors:off --verbosity:0 --hints:off --warnings:off --lineTrace:off --nimcache:/home/runner/work/Nim/Nim --out:/home/runner/work/Nim/Nim/temp /home/runner/work/Nim/Nim/temp.nim

IR

Filesize 0 bytes ```cpp ```

AST

```nim ```
1.0.0 :-1: FAIL

Output

``` Error: Command failed: nim c --gc:arc --run -d:strip -d:ssl -d:nimDisableCertificateValidation --forceBuild:on --colors:off --verbosity:0 --hints:off --warnings:off --lineTrace:off --nimcache:/home/runner/work/Nim/Nim --out:/home/runner/work/Nim/Nim/temp /home/runner/work/Nim/Nim/temp.nim command line(1, 2) Error: 'none', 'boehm' or 'refc' expected, but 'arc' found ```

Stats

  • Created 2023-08-03T04:35:00Z
  • Started 2023-08-03T04:36:33
  • Finished 2023-08-03T04:36:33
  • Duration now
  • Commands nim c --gc:arc --run -d:strip -d:ssl -d:nimDisableCertificateValidation --forceBuild:on --colors:off --verbosity:0 --hints:off --warnings:off --lineTrace:off --nimcache:/home/runner/work/Nim/Nim --out:/home/runner/work/Nim/Nim/temp /home/runner/work/Nim/Nim/temp.nim

IR

Filesize 0 bytes ```cpp ```

AST

```nim ```
0.20.2 :-1: FAIL

Output

``` Error: Command failed: nim c --gc:arc --run -d:strip -d:ssl -d:nimDisableCertificateValidation --forceBuild:on --colors:off --verbosity:0 --hints:off --warnings:off --lineTrace:off --nimcache:/home/runner/work/Nim/Nim --out:/home/runner/work/Nim/Nim/temp /home/runner/work/Nim/Nim/temp.nim command line(1, 2) Error: 'none', 'boehm' or 'refc' expected, but 'arc' found ```

Stats

  • Created 2023-08-03T04:35:00Z
  • Started 2023-08-03T04:36:44
  • Finished 2023-08-03T04:36:44
  • Duration now
  • Commands nim c --gc:arc --run -d:strip -d:ssl -d:nimDisableCertificateValidation --forceBuild:on --colors:off --verbosity:0 --hints:off --warnings:off --lineTrace:off --nimcache:/home/runner/work/Nim/Nim --out:/home/runner/work/Nim/Nim/temp /home/runner/work/Nim/Nim/temp.nim

IR

Filesize 0 bytes ```cpp ```

AST

```nim ```
:robot: Bug found in 56 minutes bisecting 7 commits at 0 commits per second.
ringabout commented 2 months ago

Now, it errors with 'CellVal' is not a concrete type