Open juancarlospaco opened 1 month ago
!nim c --gc:orc --stacktrace:on --linedir:off
type
Rlp* = object
bytes: seq[byte]
position*: int
RlpNodeType* = enum
rlpBlob
rlpList
RlpError* = object of CatchableError
MalformedRlpError* = object of RlpError
UnsupportedRlpError* = object of RlpError
RlpTypeMismatch* = object of RlpError
RlpItem = tuple[payload: Slice[int], typ: RlpNodeType]
func raiseExpectedBlob() {.noreturn, noinline.} =
raise (ref RlpTypeMismatch)(msg: "expected blob")
func toString(self: Rlp, item: RlpItem): string =
if item.typ != rlpBlob:
raiseExpectedBlob()
result = newString(item.payload.len)
func rlpItem(input: openArray[byte], start = 0): RlpItem =
raise (ref ValueError)()
func item(self: Rlp, position: int): RlpItem =
rlpItem(self.bytes, position)
func item(self: Rlp): RlpItem =
self.item(self.position)
func toString(self: Rlp): string =
self.toString(self.item())
func inspectAux(self: var Rlp, depth: int, hexOutput: bool, output: var string) =
let str = self.toString()
output = str
func inspect(self: Rlp, indent = 0, hexOutput = true): string =
var rlpCopy = self
result = newStringOfCap(self.bytes.len)
inspectAux(rlpCopy, indent, hexOutput, result)
try:
var rlp = Rlp(bytes: @[byte 0xfe, 0x00])
echo inspect(rlp)
except ValueError:
discard
107.72 Kb (110,304 bytes)
```cpp
#define NIM_INTBITS 64
#include "nimbase.h"
#include 2024-05-25T15:11:04
2024-05-25T15:11:04
105.46 Kb (107,992 bytes)
```cpp
#define NIM_INTBITS 64
#include "nimbase.h"
#include 2024-05-25T15:11:05
2024-05-25T15:11:05
2020-10-28 13:00:49 +0000
on commit #a4f9bc55c with message:
```
ARC now capable of custom extra alignment. Ref, closure and seq support. (#15697)
(cherry picked from commit 0956a9953780b0952acb56806fdffa8054fe1070)
```
The bug is in the files:
```
compiler/ccgexprs.nim
compiler/liftdestructors.nim
lib/core/typeinfo.nim
lib/system/arc.nim
lib/system/bitmasks.nim
lib/system/deepcopy.nim
lib/system/memalloc.nim
lib/system/orc.nim
lib/system/seqs_v2.nim
tests/arc/thard_alignment.nim
tests/collections/thardalignmentconstraint.nim
```
The bug can be in the commits:
(Diagnostics sometimes off-by-one).11.4.0
14.0.0
20.2
2024-05-25T15:10:32Z
3
nim c --gc:orc --stacktrace:on --linedir:off -d:nimArcDebug -d:nimArcIds --run -d:nimDebug -d:nimDebugDlOpen -d:ssl -d:nimDisableCertificateValidation --forceBuild:on --colors:off --verbosity:0 --hints:off --lineTrace:off --nimcache:/home/runner/work/nimrun-action-minefield/nimrun-action-minefield --out:/home/runner/work/nimrun-action-minefield/nimrun-action-minefield/temp /home/runner/work/nimrun-action-minefield/nimrun-action-minefield/temp.nim
:robot: Bug found in 26 minutes
bisecting 327
commits at 12
commits per second
!nim c --gc:orc -d:useMalloc
try:
var a = @[0]
a[1] = 0
except Defect as err:
echo err.msg
438.58 Kb (449,104 bytes)
```cpp
#define FX_0 "/home/runner/.choosenim/toolchains/nim-#devel/config/nim.cfg"
#define FX_1 "/home/runner/.choosenim/toolchains/nim-#devel/config/config.nims"
#define FX_2 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system.nim"
#define FX_3 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/basic_types.nim"
#define FX_4 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/compilation.nim"
#define FX_5 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/arithmetics.nim"
#define FX_6 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/comparisons.nim"
#define FX_7 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/inclrtl.nim"
#define FX_8 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/exceptions.nim"
#define FX_9 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/setops.nim"
#define FX_10 "/home/runner/.choosenim/toolchains/nim-#devel/lib/std/private/since.nim"
#define FX_11 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/ctypes.nim"
#define FX_12 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/rawquits.nim"
#define FX_13 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/memalloc.nim"
#define FX_14 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/iterators_1.nim"
#define FX_15 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/fatal.nim"
#define FX_16 "/home/runner/.choosenim/toolchains/nim-#devel/lib/std/assertions.nim"
#define FX_17 "/home/runner/.choosenim/toolchains/nim-#devel/lib/std/private/miscdollars.nim"
#define FX_18 "/home/runner/.choosenim/toolchains/nim-#devel/lib/std/private/digitsutils.nim"
#define FX_19 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/iterators.nim"
#define FX_20 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/gc_interface.nim"
#define FX_21 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/coro_detection.nim"
#define FX_22 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/dollars.nim"
#define FX_23 "/home/runner/.choosenim/toolchains/nim-#devel/lib/std/formatfloat.nim"
#define FX_24 "/home/runner/.choosenim/toolchains/nim-#devel/lib/std/private/dragonbox.nim"
#define FX_25 "/home/runner/.choosenim/toolchains/nim-#devel/lib/std/private/schubfach.nim"
#define FX_26 "/home/runner/.choosenim/toolchains/nim-#devel/lib/std/objectdollar.nim"
#define FX_27 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/indices.nim"
#define FX_28 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/nimscript.nim"
#define FX_29 "/home/runner/.choosenim/toolchains/nim-#devel/lib/std/widestrs.nim"
#define FX_30 "/home/runner/.choosenim/toolchains/nim-#devel/lib/std/syncio.nim"
#define FX_31 "/home/runner/work/nimrun-action-minefield/nimrun-action-minefield/temp.nim"
#define FX_32 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/hti.nim"
#define FX_33 "/home/runner/.choosenim/toolchains/nim-#devel/lib/std/sysatomics.nim"
#define FX_34 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/bitmasks.nim"
#define FX_35 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/ansi_c.nim"
#define FX_36 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/memory.nim"
#define FX_37 "/home/runner/.choosenim/toolchains/nim-#devel/lib/std/private/syslocks.nim"
#define FX_38 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/threadlocalstorage.nim"
#define FX_39 "/home/runner/.choosenim/toolchains/nim-#devel/lib/std/private/threadtypes.nim"
#define FX_40 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/strs_v2.nim"
#define FX_41 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/seqs_v2.nim"
#define FX_42 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/arc.nim"
#define FX_43 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/cellsets.nim"
#define FX_44 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/orc.nim"
#define FX_45 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/cellseqs_v2.nim"
#define FX_46 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/threadids.nim"
#define FX_47 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/threadimpl.nim"
#define FX_48 "/home/runner/.choosenim/toolchains/nim-#devel/lib/std/typedthreads.nim"
#define FX_49 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/excpt.nim"
#define FX_50 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/stacktraces.nim"
#define FX_51 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/chcks.nim"
#define FX_52 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/indexerrors.nim"
#define FX_53 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/integerops.nim"
#define FX_54 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/dyncalls.nim"
#define FX_55 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/countbits_impl.nim"
#define FX_56 "/home/runner/.choosenim/toolchains/nim-#devel/lib/std/private/bitops_utils.nim"
#define FX_57 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/sets.nim"
#define FX_58 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/mmdisp.nim"
#define FX_59 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/mm/malloc.nim"
#define FX_60 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/strmantle.nim"
#define FX_61 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/assign.nim"
#define FX_62 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/seqs_v2_reimpl.nim"
#define FX_63 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/channels_builtin.nim"
#define FX_64 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/repr_v2.nim"
#define FX_65 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/deepcopy.nim"
#define FX_66 "/home/runner/.choosenim/toolchains/nim-#devel/lib/nimhcr.nim"
#define NIM_INTBITS 64
#include "nimbase.h"
#define nimfr_(proc, file) \
TFrame FR_; \
FR_.procname = proc; FR_.filename = file; FR_.line = 0; FR_.len = 0; nimFrame(&FR_);
#define nimfrs_(proc, file, slots, length) \
struct {TFrame* prev;NCSTRING procname;NI line;NCSTRING filename;NI len;VarSlot s[slots];} FR_; \
FR_.procname = proc; FR_.filename = file; FR_.line = 0; FR_.len = length; nimFrame((TFrame*)&FR_);
#define nimln_(n) \
FR_.line = n;
#define nimlf_(n, file) \
FR_.line = n; FR_.filename = file;
typedef struct tySequence__qwqHTkRvwhrRyENtudHQ7g tySequence__qwqHTkRvwhrRyENtudHQ7g;
typedef struct tySequence__qwqHTkRvwhrRyENtudHQ7g_Content tySequence__qwqHTkRvwhrRyENtudHQ7g_Content;
typedef struct TNimTypeV2 TNimTypeV2;
typedef struct Exception Exception;
typedef struct RootObj RootObj;
typedef struct NimStrPayload NimStrPayload;
typedef struct NimStringV2 NimStringV2;
typedef struct tySequence__9bNRJkU9cJnNkESCDTQ7DgcQ tySequence__9bNRJkU9cJnNkESCDTQ7DgcQ;
typedef struct tySequence__9bNRJkU9cJnNkESCDTQ7DgcQ_Content tySequence__9bNRJkU9cJnNkESCDTQ7DgcQ_Content;
typedef struct tyObject_Defect__gsUvm1TlLk4IWPmIwVL9aHA tyObject_Defect__gsUvm1TlLk4IWPmIwVL9aHA;
typedef struct tyObject_StackTraceEntry__2Xjg6E7TZG7p9bcgUNTKHrg tyObject_StackTraceEntry__2Xjg6E7TZG7p9bcgUNTKHrg;
struct tySequence__qwqHTkRvwhrRyENtudHQ7g {
NI len; tySequence__qwqHTkRvwhrRyENtudHQ7g_Content* p;
};
struct TNimTypeV2 { void* destructor;
NI size;
NI16 align;
NI16 depth;
NU32* display;
NCSTRING name;
void* traceImpl;
void* typeInfoV1;
NI flags;
void* vTable[SEQ_DECL_SIZE];
};
struct RootObj {TNimTypeV2* m_type;};
struct NimStrPayload { NI cap;
NIM_CHAR data[SEQ_DECL_SIZE];
};
struct NimStringV2 { NI len;
NimStrPayload* p;
};
struct tySequence__9bNRJkU9cJnNkESCDTQ7DgcQ {
NI len; tySequence__9bNRJkU9cJnNkESCDTQ7DgcQ_Content* p;
};
struct Exception { RootObj Sup; Exception* parent;
NCSTRING name;
NimStringV2 message;
tySequence__9bNRJkU9cJnNkESCDTQ7DgcQ trace;
Exception* up;
};
struct tyObject_Defect__gsUvm1TlLk4IWPmIwVL9aHA { Exception Sup;};
typedef NimStringV2 tyArray__nHXaesL0DJZHyVS07ARPRA[1];
struct tySequence__qwqHTkRvwhrRyENtudHQ7g_Content { NI cap; NI data[SEQ_DECL_SIZE]; };
struct tyObject_StackTraceEntry__2Xjg6E7TZG7p9bcgUNTKHrg { NCSTRING procname;
NI line;
NCSTRING filename;
};
struct tySequence__9bNRJkU9cJnNkESCDTQ7DgcQ_Content { NI cap; tyObject_StackTraceEntry__2Xjg6E7TZG7p9bcgUNTKHrg data[SEQ_DECL_SIZE]; };
N_LIB_PRIVATE N_NIMCALL(void*, newSeqPayload)(NI cap_p0, NI elemSize_p1, NI elemAlign_p2);
N_LIB_PRIVATE N_NOINLINE(void, raiseIndexError2)(NI i_p0, NI n_p1);
N_LIB_PRIVATE N_NIMCALL(void, _ZN6system10eqdestroy_E3seqI3intE)(tySequence__qwqHTkRvwhrRyENtudHQ7g dest_p0);
static N_INLINE(NIM_BOOL, isObjDisplayCheck)(TNimTypeV2* source_p0, NI16 targetDepth_p1, NU32 token_p2);
static N_INLINE(void, nimFrame)(TFrame* s_p0);
N_LIB_PRIVATE N_NOINLINE(void, _ZN6system21callDepthLimitReachedE)(void);
static N_INLINE(void, popFrame)(void);
static N_INLINE(Exception*, nimBorrowCurrentException)(void);
static N_INLINE(Exception*, getCurrentException)(void);
N_LIB_PRIVATE N_NIMCALL(void, _ZN6system7eqcopy_E3varI3refIN6system9ExceptionEEE3refIN6system9ExceptionEE4bool)(Exception** dest_p0, Exception* src_p1, NIM_BOOL cyclic_p2);
N_LIB_PRIVATE N_NIMCALL(void, echoBinSafe)(NimStringV2* args_p0, NI args_p0Len_0);
N_LIB_PRIVATE N_NIMCALL(void, _ZN6system10eqdestroy_E3refIN6system6DefectEE)(tyObject_Defect__gsUvm1TlLk4IWPmIwVL9aHA* dest_p0);
static N_INLINE(void, popCurrentException)(void);
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void);
N_LIB_PRIVATE N_NIMCALL(void, nimTestErrorFlag)(void);
N_LIB_PRIVATE N_NIMCALL(void, atmdotdotatsdotdotatsdotdotatsdotchoosenimatstoolchainsatsnimminusathdevelatslibatssystemdotnim_Init000)(void);
N_LIB_PRIVATE N_NIMCALL(void, NimMainModule)(void);
N_LIB_PRIVATE tySequence__qwqHTkRvwhrRyENtudHQ7g a__temp_u5;
extern NIM_THREADVAR TFrame* framePtr__system_u2652;
extern NIM_THREADVAR Exception* currException__system_u4409;
extern NIM_THREADVAR NIM_BOOL nimInErrorMode__system_u4744;
#line 570 FX_49
static N_INLINE(void, nimFrame)(TFrame* s_p0) {
#line 571 FX_49
{ if (!(framePtr__system_u2652 == ((TFrame*) NIM_NIL))) goto LA3_;
#line 572 FX_49
(*s_p0).calldepth = ((NI16)0); }
goto LA1_;
LA3_: ;
{
#line 575 FX_49
(*s_p0).calldepth = (NI16)((*framePtr__system_u2652).calldepth + ((NI16)1)); }
LA1_: ;
#line 577 FX_49
(*s_p0).prev = framePtr__system_u2652;
#line 578 FX_49
framePtr__system_u2652 = s_p0;
#line 579 FX_49
{ if (!((*s_p0).calldepth == ((NI16)2000))) goto LA8_;
_ZN6system21callDepthLimitReachedE();
}
LA8_: ;
}
#line 118 FX_49
static N_INLINE(void, popFrame)(void) {
#line 119 FX_49
framePtr__system_u2652 = (*framePtr__system_u2652).prev;}
#line 261 FX_42
static N_INLINE(NIM_BOOL, isObjDisplayCheck)(TNimTypeV2* source_p0, NI16 targetDepth_p1, NU32 token_p2) { NIM_BOOL result; NIM_BOOL T1_; nimfr_("isObjDisplayCheck", "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/arc.nim");
#line 262 FX_42
T1_ = (NIM_BOOL)0; T1_ = (targetDepth_p1 <= (*source_p0).depth); if (!(T1_)) goto LA2_;
T1_ = ((*source_p0).display[targetDepth_p1] == token_p2);LA2_: ;
result = T1_; popFrame(); return result;}
#line 2278 FX_2
static N_INLINE(Exception*, nimBorrowCurrentException)(void) { Exception* result; nimfr_("nimBorrowCurrentException", "/home/runner/.choosenim/toolchains/nim-#devel/lib/system.nim");
#line 2281 FX_2
result = currException__system_u4409; popFrame(); return result;}
#line 2274 FX_2
static N_INLINE(Exception*, getCurrentException)(void) { Exception* result; nimfr_("getCurrentException", "/home/runner/.choosenim/toolchains/nim-#devel/lib/system.nim"); result = NIM_NIL;
#line 287 FX_48
_ZN6system7eqcopy_E3varI3refIN6system9ExceptionEEE3refIN6system9ExceptionEE4bool(&result, currException__system_u4409, NIM_FALSE);
popFrame(); return result;}
#line 157 FX_49
static N_INLINE(void, popCurrentException)(void) {
#line 287 FX_48
_ZN6system7eqcopy_E3varI3refIN6system9ExceptionEEE3refIN6system9ExceptionEE4bool(&currException__system_u4409, (*currException__system_u4409).up, NIM_FALSE);
}
#line 444 FX_49
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void) { NIM_BOOL* result;
#line 445 FX_49
result = (&nimInErrorMode__system_u4744); return result;}
N_LIB_PRIVATE void PreMainInner(void) {
}
N_LIB_PRIVATE int cmdCount;
N_LIB_PRIVATE char** cmdLine;
N_LIB_PRIVATE char** gEnv;
N_LIB_PRIVATE void PreMain(void) {
#if 0
void (*volatile inner)(void);
inner = PreMainInner;
atmdotdotatsdotdotatsdotdotatsdotchoosenimatstoolchainsatsnimminusathdevelatslibatssystemdotnim_Init000();
(*inner)();
#else
atmdotdotatsdotdotatsdotdotatsdotchoosenimatstoolchainsatsnimminusathdevelatslibatssystemdotnim_Init000();
PreMainInner();
#endif
}
N_LIB_PRIVATE N_CDECL(void, NimMainInner)(void) {
NimMainModule();
}
N_CDECL(void, NimMain)(void) {
#if 0
void (*volatile inner)(void);
PreMain();
inner = NimMainInner;
(*inner)();
#else
PreMain();
NimMainInner();
#endif
}
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) {
#line 999999 "generated_not_to_break_here"
{
NIM_BOOL* nimErr_; nimfr_("temp", "/home/runner/work/nimrun-action-minefield/nimrun-action-minefield/temp.nim");nimErr_ = nimErrorFlag();
#line 2 FX_31
a__temp_u5.len = 1; a__temp_u5.p = (tySequence__qwqHTkRvwhrRyENtudHQ7g_Content*) newSeqPayload(1, sizeof(NI), NIM_ALIGNOF(NI)); a__temp_u5.p->data[0] = ((NI)0);
#line 3 FX_31
if (((NI)1) < 0 || ((NI)1) >= a__temp_u5.len){ raiseIndexError2(((NI)1),a__temp_u5.len-1); goto LA1_; } a__temp_u5.p->data[((NI)1)] = ((NI)0);
#line 2 FX_31
_ZN6system10eqdestroy_E3seqI3intE(a__temp_u5);
if (NIM_UNLIKELY(*nimErr_)) { LA1_:; if (isObjDisplayCheck(nimBorrowCurrentException()->Sup.m_type, 2, 3308231424)) {
#line 4 FX_31
tyObject_Defect__gsUvm1TlLk4IWPmIwVL9aHA* err; Exception* T6_; tyArray__nHXaesL0DJZHyVS07ARPRA T7_; *nimErr_ = NIM_FALSE; err = NIM_NIL;
#line 5 FX_31
T6_ = NIM_NIL; T6_ = getCurrentException(); err = ((tyObject_Defect__gsUvm1TlLk4IWPmIwVL9aHA*) (T6_));
#line 5 FX_31
T7_[0] = (*err).Sup.message; echoBinSafe(T7_, 1); { LA5_:; }
{
#line 4 FX_31
_ZN6system10eqdestroy_E3refIN6system6DefectEE(err);
}
if (NIM_UNLIKELY(*nimErr_)) goto LA3_; popCurrentException(); LA3_:; }
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; BeforeRet_: ;
nimTestErrorFlag(); popFrame();}
}
```
2024-06-15T14:28:56
2024-06-15T14:28:59
3 minutes
395.00 Kb (404,480 bytes)
```cpp
#define NIM_INTBITS 64
#include "nimbase.h"
#define nimfr_(proc, file) \
TFrame FR_; \
FR_.procname = proc; FR_.filename = file; FR_.line = 0; FR_.len = 0; nimFrame(&FR_);
#define nimfrs_(proc, file, slots, length) \
struct {TFrame* prev;NCSTRING procname;NI line;NCSTRING filename;NI len;VarSlot s[slots];} FR_; \
FR_.procname = proc; FR_.filename = file; FR_.line = 0; FR_.len = length; nimFrame((TFrame*)&FR_);
#define nimln_(n) \
FR_.line = n;
#define nimlf_(n, file) \
FR_.line = n; FR_.filename = file;
typedef struct tySequence__qwqHTkRvwhrRyENtudHQ7g tySequence__qwqHTkRvwhrRyENtudHQ7g;
typedef struct tySequence__qwqHTkRvwhrRyENtudHQ7g_Content tySequence__qwqHTkRvwhrRyENtudHQ7g_Content;
typedef struct TNimTypeV2 TNimTypeV2;
typedef struct Exception Exception;
typedef struct RootObj RootObj;
typedef struct NimStrPayload NimStrPayload;
typedef struct NimStringV2 NimStringV2;
typedef struct tySequence__W5u7dtuXI9c4BOBf9bW9bZhWQ tySequence__W5u7dtuXI9c4BOBf9bW9bZhWQ;
typedef struct tySequence__W5u7dtuXI9c4BOBf9bW9bZhWQ_Content tySequence__W5u7dtuXI9c4BOBf9bW9bZhWQ_Content;
typedef struct tyObject_Defect__4irTbIOnlxhyYExShRxlog tyObject_Defect__4irTbIOnlxhyYExShRxlog;
typedef struct tyObject_StackTraceEntry__6CL1lcV9bxEp7TPS0fN8sRQ tyObject_StackTraceEntry__6CL1lcV9bxEp7TPS0fN8sRQ;
struct tySequence__qwqHTkRvwhrRyENtudHQ7g {
NI len; tySequence__qwqHTkRvwhrRyENtudHQ7g_Content* p;
};
struct TNimTypeV2 { void* destructor;
NI size;
NI16 align;
NI16 depth;
NU32* display;
NCSTRING name;
void* traceImpl;
void* typeInfoV1;
NI flags;
};
struct RootObj {TNimTypeV2* m_type;};
struct NimStrPayload { NI cap;
NIM_CHAR data[SEQ_DECL_SIZE];
};
struct NimStringV2 { NI len;
NimStrPayload* p;
};
struct tySequence__W5u7dtuXI9c4BOBf9bW9bZhWQ {
NI len; tySequence__W5u7dtuXI9c4BOBf9bW9bZhWQ_Content* p;
};
struct Exception { RootObj Sup; Exception* parent;
NCSTRING name;
NimStringV2 message;
tySequence__W5u7dtuXI9c4BOBf9bW9bZhWQ trace;
Exception* up;
};
struct tyObject_Defect__4irTbIOnlxhyYExShRxlog { Exception Sup;};
typedef NimStringV2 tyArray__nHXaesL0DJZHyVS07ARPRA[1];
struct tySequence__qwqHTkRvwhrRyENtudHQ7g_Content { NI cap; NI data[SEQ_DECL_SIZE]; };
struct tyObject_StackTraceEntry__6CL1lcV9bxEp7TPS0fN8sRQ { NCSTRING procname;
NI line;
NCSTRING filename;
};
struct tySequence__W5u7dtuXI9c4BOBf9bW9bZhWQ_Content { NI cap; tyObject_StackTraceEntry__6CL1lcV9bxEp7TPS0fN8sRQ data[SEQ_DECL_SIZE]; };
N_LIB_PRIVATE N_NIMCALL(void*, newSeqPayload)(NI cap_p0, NI elemSize_p1, NI elemAlign_p2);
N_LIB_PRIVATE N_NOINLINE(void, raiseIndexError2)(NI i_p0, NI n_p1);
N_LIB_PRIVATE N_NIMCALL(void, _ZN3at_10eqdestroy_E3seqI3intE)(tySequence__qwqHTkRvwhrRyENtudHQ7g dest_p0);
static N_INLINE(NIM_BOOL, isObjDisplayCheck)(TNimTypeV2* source_p0, NI16 targetDepth_p1, NU32 token_p2);
static N_INLINE(void, nimFrame)(TFrame* s_p0);
N_LIB_PRIVATE N_NOINLINE(void, _ZN6system21callDepthLimitReachedE)(void);
static N_INLINE(void, popFrame)(void);
static N_INLINE(Exception*, nimBorrowCurrentException)(void);
static N_INLINE(Exception*, getCurrentException)(void);
N_LIB_PRIVATE N_NIMCALL(void, _ZN12newException7eqcopy_E3varI3refIN6system9ExceptionEEE3refIN6system9ExceptionEE4bool)(Exception** dest_p0, Exception* src_p1, NIM_BOOL cyclic_p2);
N_LIB_PRIVATE N_NIMCALL(void, echoBinSafe)(NimStringV2* args_p0, NI args_p0Len_0);
N_LIB_PRIVATE N_NIMCALL(void, _ZN6system10eqdestroy_E3refIN6system6DefectEE)(tyObject_Defect__4irTbIOnlxhyYExShRxlog* dest_p0);
static N_INLINE(void, popCurrentException)(void);
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void);
N_LIB_PRIVATE N_NIMCALL(void, nimTestErrorFlag)(void);
N_LIB_PRIVATE N_NIMCALL(void, atmdotdotatsdotdotatsdotdotatsdotchoosenimatstoolchainsatsnimminus2dot0dot4atslibatssystemdotnim_Init000)(void);
N_LIB_PRIVATE N_NIMCALL(void, NimMainModule)(void);
N_LIB_PRIVATE tySequence__qwqHTkRvwhrRyENtudHQ7g a__temp_u5;
extern NIM_THREADVAR TFrame* framePtr__system_u4431;
extern NIM_THREADVAR Exception* currException__system_u4433;
extern NIM_THREADVAR NIM_BOOL nimInErrorMode__system_u4814;
#line 549 "/home/runner/.choosenim/toolchains/nim-2.0.4/lib/system/excpt.nim"
static N_INLINE(void, nimFrame)(TFrame* s_p0) {
#line 550
{ if (!(framePtr__system_u4431 == ((TFrame*) NIM_NIL))) goto LA3_;
#line 551
(*s_p0).calldepth = ((NI16)0); }
goto LA1_;
LA3_: ;
{
#line 554
(*s_p0).calldepth = (NI16)((*framePtr__system_u4431).calldepth + ((NI16)1)); }
LA1_: ;
#line 556
(*s_p0).prev = framePtr__system_u4431;
#line 557
framePtr__system_u4431 = s_p0;
#line 558
{ if (!((*s_p0).calldepth == ((NI16)2000))) goto LA8_;
_ZN6system21callDepthLimitReachedE();
}
LA8_: ;
}
#line 99 "/home/runner/.choosenim/toolchains/nim-2.0.4/lib/system/excpt.nim"
static N_INLINE(void, popFrame)(void) {
#line 100
framePtr__system_u4431 = (*framePtr__system_u4431).prev;}
#line 237 "/home/runner/.choosenim/toolchains/nim-2.0.4/lib/system/arc.nim"
static N_INLINE(NIM_BOOL, isObjDisplayCheck)(TNimTypeV2* source_p0, NI16 targetDepth_p1, NU32 token_p2) { NIM_BOOL result; NIM_BOOL T1_; nimfr_("isObjDisplayCheck", "/home/runner/.choosenim/toolchains/nim-2.0.4/lib/system/arc.nim");
#line 238
T1_ = (NIM_BOOL)0; T1_ = (targetDepth_p1 <= (*source_p0).depth); if (!(T1_)) goto LA2_;
T1_ = ((*source_p0).display[targetDepth_p1] == token_p2);LA2_: ;
result = T1_; popFrame(); return result;}
#line 2209 "/home/runner/.choosenim/toolchains/nim-2.0.4/lib/system.nim"
static N_INLINE(Exception*, nimBorrowCurrentException)(void) { Exception* result; nimfr_("nimBorrowCurrentException", "/home/runner/.choosenim/toolchains/nim-2.0.4/lib/system.nim");
#line 2212
result = currException__system_u4433; popFrame(); return result;}
#line 2205 "/home/runner/.choosenim/toolchains/nim-2.0.4/lib/system.nim"
static N_INLINE(Exception*, getCurrentException)(void) { Exception* result; nimfr_("getCurrentException", "/home/runner/.choosenim/toolchains/nim-2.0.4/lib/system.nim"); result = NIM_NIL;
#line 247 "/home/runner/.choosenim/toolchains/nim-2.0.4/lib/std/typedthreads.nim"
_ZN12newException7eqcopy_E3varI3refIN6system9ExceptionEEE3refIN6system9ExceptionEE4bool(&result, currException__system_u4433, NIM_FALSE);
popFrame(); return result;}
#line 137 "/home/runner/.choosenim/toolchains/nim-2.0.4/lib/system/excpt.nim"
static N_INLINE(void, popCurrentException)(void) {
#line 247 "/home/runner/.choosenim/toolchains/nim-2.0.4/lib/std/typedthreads.nim"
_ZN12newException7eqcopy_E3varI3refIN6system9ExceptionEEE3refIN6system9ExceptionEE4bool(&currException__system_u4433, (*currException__system_u4433).up, NIM_FALSE);
}
#line 423 "/home/runner/.choosenim/toolchains/nim-2.0.4/lib/system/excpt.nim"
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void) { NIM_BOOL* result;
#line 424
result = (&nimInErrorMode__system_u4814); return result;}
N_LIB_PRIVATE void PreMainInner(void) {
}
N_LIB_PRIVATE int cmdCount;
N_LIB_PRIVATE char** cmdLine;
N_LIB_PRIVATE char** gEnv;
N_LIB_PRIVATE void PreMain(void) {
#if 0
void (*volatile inner)(void);
inner = PreMainInner;
atmdotdotatsdotdotatsdotdotatsdotchoosenimatstoolchainsatsnimminus2dot0dot4atslibatssystemdotnim_Init000();
(*inner)();
#else
atmdotdotatsdotdotatsdotdotatsdotchoosenimatstoolchainsatsnimminus2dot0dot4atslibatssystemdotnim_Init000();
PreMainInner();
#endif
}
N_LIB_PRIVATE N_CDECL(void, NimMainInner)(void) {
NimMainModule();
}
N_CDECL(void, NimMain)(void) {
#if 0
void (*volatile inner)(void);
PreMain();
inner = NimMainInner;
(*inner)();
#else
PreMain();
NimMainInner();
#endif
}
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) {
#line 999999 "generated_not_to_break_here"
{
NIM_BOOL* nimErr_; nimfr_("temp", "/home/runner/work/nimrun-action-minefield/nimrun-action-minefield/temp.nim");nimErr_ = nimErrorFlag();
#line 2 "/home/runner/work/nimrun-action-minefield/nimrun-action-minefield/temp.nim"
a__temp_u5.len = 1; a__temp_u5.p = (tySequence__qwqHTkRvwhrRyENtudHQ7g_Content*) newSeqPayload(1, sizeof(NI), NIM_ALIGNOF(NI)); a__temp_u5.p->data[0] = ((NI)0);
#line 3
if (((NI)1) < 0 || ((NI)1) >= a__temp_u5.len){ raiseIndexError2(((NI)1),a__temp_u5.len-1); goto LA1_; } a__temp_u5.p->data[((NI)1)] = ((NI)0);
#line 2
_ZN3at_10eqdestroy_E3seqI3intE(a__temp_u5);
if (NIM_UNLIKELY(*nimErr_)) { LA1_:; if (isObjDisplayCheck(nimBorrowCurrentException()->Sup.m_type, 2, 718498816)) {
#line 4
tyObject_Defect__4irTbIOnlxhyYExShRxlog* err; Exception* T6_; tyArray__nHXaesL0DJZHyVS07ARPRA T7_; *nimErr_ = NIM_FALSE; err = NIM_NIL;
#line 5
T6_ = NIM_NIL; T6_ = getCurrentException(); err = ((tyObject_Defect__4irTbIOnlxhyYExShRxlog*) (T6_));
#line 5 "/home/runner/work/nimrun-action-minefield/nimrun-action-minefield/temp.nim"
T7_[0] = (*err).Sup.message; echoBinSafe(T7_, 1); { LA5_:; }
{
#line 4
_ZN6system10eqdestroy_E3refIN6system6DefectEE(err);
}
if (NIM_UNLIKELY(*nimErr_)) goto LA3_; popCurrentException(); LA3_:; }
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; BeforeRet_: ;
nimTestErrorFlag(); popFrame();}
}
```
2024-06-15T14:29:00
2024-06-15T14:29:01
1 minutes
2022-11-09 03:39:42 +0800
on commit #cdb136f58 with message:
```
arc/orc no longer needs type names by default; with `nimTypeNames` it gets nicer names (#20789)
Co-authored-by: Araq 11.4.0
14.0.0
20.3
2024-06-15T14:28:19Z
3
nim c --gc:orc -d:useMalloc -d:nimArcDebug -d:nimArcIds -d:nimAllocPagesViaMalloc -d:useSysAssert -d:useGcAssert -d:nimLeakDetector --debugger:native --debuginfo:on -d:nimDebug -d:nimDebugDlOpen -d:ssl -d:nimDisableCertificateValidation --forceBuild:on --colors:off --verbosity:0 --hints:off --lineTrace:off --nimcache:/home/runner/work/nimrun-action-minefield/nimrun-action-minefield --out:/home/runner/work/nimrun-action-minefield/nimrun-action-minefield/temp /home/runner/work/nimrun-action-minefield/nimrun-action-minefield/temp.nim && valgrind /home/runner/work/nimrun-action-minefield/nimrun-action-minefield/temp
:robot: Bug found in 42 minutes
bisecting 2265
commits at 53
commits per second
!nim c --gc:orc -d:useMalloc
try:
var a = @[0]
a[1] = 0
except Defect as err:
echo err.msg
438.58 Kb (449,104 bytes)
```cpp
#define FX_0 "/home/runner/.choosenim/toolchains/nim-#devel/config/nim.cfg"
#define FX_1 "/home/runner/.choosenim/toolchains/nim-#devel/config/config.nims"
#define FX_2 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system.nim"
#define FX_3 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/basic_types.nim"
#define FX_4 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/compilation.nim"
#define FX_5 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/arithmetics.nim"
#define FX_6 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/comparisons.nim"
#define FX_7 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/inclrtl.nim"
#define FX_8 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/exceptions.nim"
#define FX_9 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/setops.nim"
#define FX_10 "/home/runner/.choosenim/toolchains/nim-#devel/lib/std/private/since.nim"
#define FX_11 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/ctypes.nim"
#define FX_12 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/rawquits.nim"
#define FX_13 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/memalloc.nim"
#define FX_14 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/iterators_1.nim"
#define FX_15 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/fatal.nim"
#define FX_16 "/home/runner/.choosenim/toolchains/nim-#devel/lib/std/assertions.nim"
#define FX_17 "/home/runner/.choosenim/toolchains/nim-#devel/lib/std/private/miscdollars.nim"
#define FX_18 "/home/runner/.choosenim/toolchains/nim-#devel/lib/std/private/digitsutils.nim"
#define FX_19 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/iterators.nim"
#define FX_20 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/gc_interface.nim"
#define FX_21 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/coro_detection.nim"
#define FX_22 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/dollars.nim"
#define FX_23 "/home/runner/.choosenim/toolchains/nim-#devel/lib/std/formatfloat.nim"
#define FX_24 "/home/runner/.choosenim/toolchains/nim-#devel/lib/std/private/dragonbox.nim"
#define FX_25 "/home/runner/.choosenim/toolchains/nim-#devel/lib/std/private/schubfach.nim"
#define FX_26 "/home/runner/.choosenim/toolchains/nim-#devel/lib/std/objectdollar.nim"
#define FX_27 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/indices.nim"
#define FX_28 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/nimscript.nim"
#define FX_29 "/home/runner/.choosenim/toolchains/nim-#devel/lib/std/widestrs.nim"
#define FX_30 "/home/runner/.choosenim/toolchains/nim-#devel/lib/std/syncio.nim"
#define FX_31 "/home/runner/work/nimrun-action-minefield/nimrun-action-minefield/temp.nim"
#define FX_32 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/hti.nim"
#define FX_33 "/home/runner/.choosenim/toolchains/nim-#devel/lib/std/sysatomics.nim"
#define FX_34 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/bitmasks.nim"
#define FX_35 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/ansi_c.nim"
#define FX_36 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/memory.nim"
#define FX_37 "/home/runner/.choosenim/toolchains/nim-#devel/lib/std/private/syslocks.nim"
#define FX_38 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/threadlocalstorage.nim"
#define FX_39 "/home/runner/.choosenim/toolchains/nim-#devel/lib/std/private/threadtypes.nim"
#define FX_40 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/strs_v2.nim"
#define FX_41 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/seqs_v2.nim"
#define FX_42 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/arc.nim"
#define FX_43 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/cellsets.nim"
#define FX_44 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/orc.nim"
#define FX_45 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/cellseqs_v2.nim"
#define FX_46 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/threadids.nim"
#define FX_47 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/threadimpl.nim"
#define FX_48 "/home/runner/.choosenim/toolchains/nim-#devel/lib/std/typedthreads.nim"
#define FX_49 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/excpt.nim"
#define FX_50 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/stacktraces.nim"
#define FX_51 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/chcks.nim"
#define FX_52 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/indexerrors.nim"
#define FX_53 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/integerops.nim"
#define FX_54 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/dyncalls.nim"
#define FX_55 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/countbits_impl.nim"
#define FX_56 "/home/runner/.choosenim/toolchains/nim-#devel/lib/std/private/bitops_utils.nim"
#define FX_57 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/sets.nim"
#define FX_58 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/mmdisp.nim"
#define FX_59 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/mm/malloc.nim"
#define FX_60 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/strmantle.nim"
#define FX_61 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/assign.nim"
#define FX_62 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/seqs_v2_reimpl.nim"
#define FX_63 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/channels_builtin.nim"
#define FX_64 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/repr_v2.nim"
#define FX_65 "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/deepcopy.nim"
#define FX_66 "/home/runner/.choosenim/toolchains/nim-#devel/lib/nimhcr.nim"
#define NIM_INTBITS 64
#include "nimbase.h"
#define nimfr_(proc, file) \
TFrame FR_; \
FR_.procname = proc; FR_.filename = file; FR_.line = 0; FR_.len = 0; nimFrame(&FR_);
#define nimfrs_(proc, file, slots, length) \
struct {TFrame* prev;NCSTRING procname;NI line;NCSTRING filename;NI len;VarSlot s[slots];} FR_; \
FR_.procname = proc; FR_.filename = file; FR_.line = 0; FR_.len = length; nimFrame((TFrame*)&FR_);
#define nimln_(n) \
FR_.line = n;
#define nimlf_(n, file) \
FR_.line = n; FR_.filename = file;
typedef struct tySequence__qwqHTkRvwhrRyENtudHQ7g tySequence__qwqHTkRvwhrRyENtudHQ7g;
typedef struct tySequence__qwqHTkRvwhrRyENtudHQ7g_Content tySequence__qwqHTkRvwhrRyENtudHQ7g_Content;
typedef struct TNimTypeV2 TNimTypeV2;
typedef struct Exception Exception;
typedef struct RootObj RootObj;
typedef struct NimStrPayload NimStrPayload;
typedef struct NimStringV2 NimStringV2;
typedef struct tySequence__9bNRJkU9cJnNkESCDTQ7DgcQ tySequence__9bNRJkU9cJnNkESCDTQ7DgcQ;
typedef struct tySequence__9bNRJkU9cJnNkESCDTQ7DgcQ_Content tySequence__9bNRJkU9cJnNkESCDTQ7DgcQ_Content;
typedef struct tyObject_Defect__gsUvm1TlLk4IWPmIwVL9aHA tyObject_Defect__gsUvm1TlLk4IWPmIwVL9aHA;
typedef struct tyObject_StackTraceEntry__2Xjg6E7TZG7p9bcgUNTKHrg tyObject_StackTraceEntry__2Xjg6E7TZG7p9bcgUNTKHrg;
struct tySequence__qwqHTkRvwhrRyENtudHQ7g {
NI len; tySequence__qwqHTkRvwhrRyENtudHQ7g_Content* p;
};
struct TNimTypeV2 { void* destructor;
NI size;
NI16 align;
NI16 depth;
NU32* display;
NCSTRING name;
void* traceImpl;
void* typeInfoV1;
NI flags;
void* vTable[SEQ_DECL_SIZE];
};
struct RootObj {TNimTypeV2* m_type;};
struct NimStrPayload { NI cap;
NIM_CHAR data[SEQ_DECL_SIZE];
};
struct NimStringV2 { NI len;
NimStrPayload* p;
};
struct tySequence__9bNRJkU9cJnNkESCDTQ7DgcQ {
NI len; tySequence__9bNRJkU9cJnNkESCDTQ7DgcQ_Content* p;
};
struct Exception { RootObj Sup; Exception* parent;
NCSTRING name;
NimStringV2 message;
tySequence__9bNRJkU9cJnNkESCDTQ7DgcQ trace;
Exception* up;
};
struct tyObject_Defect__gsUvm1TlLk4IWPmIwVL9aHA { Exception Sup;};
typedef NimStringV2 tyArray__nHXaesL0DJZHyVS07ARPRA[1];
struct tySequence__qwqHTkRvwhrRyENtudHQ7g_Content { NI cap; NI data[SEQ_DECL_SIZE]; };
struct tyObject_StackTraceEntry__2Xjg6E7TZG7p9bcgUNTKHrg { NCSTRING procname;
NI line;
NCSTRING filename;
};
struct tySequence__9bNRJkU9cJnNkESCDTQ7DgcQ_Content { NI cap; tyObject_StackTraceEntry__2Xjg6E7TZG7p9bcgUNTKHrg data[SEQ_DECL_SIZE]; };
N_LIB_PRIVATE N_NIMCALL(void*, newSeqPayload)(NI cap_p0, NI elemSize_p1, NI elemAlign_p2);
N_LIB_PRIVATE N_NOINLINE(void, raiseIndexError2)(NI i_p0, NI n_p1);
N_LIB_PRIVATE N_NIMCALL(void, _ZN6system10eqdestroy_E3seqI3intE)(tySequence__qwqHTkRvwhrRyENtudHQ7g dest_p0);
static N_INLINE(NIM_BOOL, isObjDisplayCheck)(TNimTypeV2* source_p0, NI16 targetDepth_p1, NU32 token_p2);
static N_INLINE(void, nimFrame)(TFrame* s_p0);
N_LIB_PRIVATE N_NOINLINE(void, _ZN6system21callDepthLimitReachedE)(void);
static N_INLINE(void, popFrame)(void);
static N_INLINE(Exception*, nimBorrowCurrentException)(void);
static N_INLINE(Exception*, getCurrentException)(void);
N_LIB_PRIVATE N_NIMCALL(void, _ZN6system7eqcopy_E3varI3refIN6system9ExceptionEEE3refIN6system9ExceptionEE4bool)(Exception** dest_p0, Exception* src_p1, NIM_BOOL cyclic_p2);
N_LIB_PRIVATE N_NIMCALL(void, echoBinSafe)(NimStringV2* args_p0, NI args_p0Len_0);
N_LIB_PRIVATE N_NIMCALL(void, _ZN6system10eqdestroy_E3refIN6system6DefectEE)(tyObject_Defect__gsUvm1TlLk4IWPmIwVL9aHA* dest_p0);
static N_INLINE(void, popCurrentException)(void);
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void);
N_LIB_PRIVATE N_NIMCALL(void, nimTestErrorFlag)(void);
N_LIB_PRIVATE N_NIMCALL(void, atmdotdotatsdotdotatsdotdotatsdotchoosenimatstoolchainsatsnimminusathdevelatslibatssystemdotnim_Init000)(void);
N_LIB_PRIVATE N_NIMCALL(void, NimMainModule)(void);
N_LIB_PRIVATE tySequence__qwqHTkRvwhrRyENtudHQ7g a__temp_u5;
extern NIM_THREADVAR TFrame* framePtr__system_u2652;
extern NIM_THREADVAR Exception* currException__system_u4409;
extern NIM_THREADVAR NIM_BOOL nimInErrorMode__system_u4744;
#line 570 FX_49
static N_INLINE(void, nimFrame)(TFrame* s_p0) {
#line 571 FX_49
{ if (!(framePtr__system_u2652 == ((TFrame*) NIM_NIL))) goto LA3_;
#line 572 FX_49
(*s_p0).calldepth = ((NI16)0); }
goto LA1_;
LA3_: ;
{
#line 575 FX_49
(*s_p0).calldepth = (NI16)((*framePtr__system_u2652).calldepth + ((NI16)1)); }
LA1_: ;
#line 577 FX_49
(*s_p0).prev = framePtr__system_u2652;
#line 578 FX_49
framePtr__system_u2652 = s_p0;
#line 579 FX_49
{ if (!((*s_p0).calldepth == ((NI16)2000))) goto LA8_;
_ZN6system21callDepthLimitReachedE();
}
LA8_: ;
}
#line 118 FX_49
static N_INLINE(void, popFrame)(void) {
#line 119 FX_49
framePtr__system_u2652 = (*framePtr__system_u2652).prev;}
#line 261 FX_42
static N_INLINE(NIM_BOOL, isObjDisplayCheck)(TNimTypeV2* source_p0, NI16 targetDepth_p1, NU32 token_p2) { NIM_BOOL result; NIM_BOOL T1_; nimfr_("isObjDisplayCheck", "/home/runner/.choosenim/toolchains/nim-#devel/lib/system/arc.nim");
#line 262 FX_42
T1_ = (NIM_BOOL)0; T1_ = (targetDepth_p1 <= (*source_p0).depth); if (!(T1_)) goto LA2_;
T1_ = ((*source_p0).display[targetDepth_p1] == token_p2);LA2_: ;
result = T1_; popFrame(); return result;}
#line 2278 FX_2
static N_INLINE(Exception*, nimBorrowCurrentException)(void) { Exception* result; nimfr_("nimBorrowCurrentException", "/home/runner/.choosenim/toolchains/nim-#devel/lib/system.nim");
#line 2281 FX_2
result = currException__system_u4409; popFrame(); return result;}
#line 2274 FX_2
static N_INLINE(Exception*, getCurrentException)(void) { Exception* result; nimfr_("getCurrentException", "/home/runner/.choosenim/toolchains/nim-#devel/lib/system.nim"); result = NIM_NIL;
#line 287 FX_48
_ZN6system7eqcopy_E3varI3refIN6system9ExceptionEEE3refIN6system9ExceptionEE4bool(&result, currException__system_u4409, NIM_FALSE);
popFrame(); return result;}
#line 157 FX_49
static N_INLINE(void, popCurrentException)(void) {
#line 287 FX_48
_ZN6system7eqcopy_E3varI3refIN6system9ExceptionEEE3refIN6system9ExceptionEE4bool(&currException__system_u4409, (*currException__system_u4409).up, NIM_FALSE);
}
#line 444 FX_49
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void) { NIM_BOOL* result;
#line 445 FX_49
result = (&nimInErrorMode__system_u4744); return result;}
N_LIB_PRIVATE void PreMainInner(void) {
}
N_LIB_PRIVATE int cmdCount;
N_LIB_PRIVATE char** cmdLine;
N_LIB_PRIVATE char** gEnv;
N_LIB_PRIVATE void PreMain(void) {
#if 0
void (*volatile inner)(void);
inner = PreMainInner;
atmdotdotatsdotdotatsdotdotatsdotchoosenimatstoolchainsatsnimminusathdevelatslibatssystemdotnim_Init000();
(*inner)();
#else
atmdotdotatsdotdotatsdotdotatsdotchoosenimatstoolchainsatsnimminusathdevelatslibatssystemdotnim_Init000();
PreMainInner();
#endif
}
N_LIB_PRIVATE N_CDECL(void, NimMainInner)(void) {
NimMainModule();
}
N_CDECL(void, NimMain)(void) {
#if 0
void (*volatile inner)(void);
PreMain();
inner = NimMainInner;
(*inner)();
#else
PreMain();
NimMainInner();
#endif
}
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) {
#line 999999 "generated_not_to_break_here"
{
NIM_BOOL* nimErr_; nimfr_("temp", "/home/runner/work/nimrun-action-minefield/nimrun-action-minefield/temp.nim");nimErr_ = nimErrorFlag();
#line 2 FX_31
a__temp_u5.len = 1; a__temp_u5.p = (tySequence__qwqHTkRvwhrRyENtudHQ7g_Content*) newSeqPayload(1, sizeof(NI), NIM_ALIGNOF(NI)); a__temp_u5.p->data[0] = ((NI)0);
#line 3 FX_31
if (((NI)1) < 0 || ((NI)1) >= a__temp_u5.len){ raiseIndexError2(((NI)1),a__temp_u5.len-1); goto LA1_; } a__temp_u5.p->data[((NI)1)] = ((NI)0);
#line 2 FX_31
_ZN6system10eqdestroy_E3seqI3intE(a__temp_u5);
if (NIM_UNLIKELY(*nimErr_)) { LA1_:; if (isObjDisplayCheck(nimBorrowCurrentException()->Sup.m_type, 2, 3308231424)) {
#line 4 FX_31
tyObject_Defect__gsUvm1TlLk4IWPmIwVL9aHA* err; Exception* T6_; tyArray__nHXaesL0DJZHyVS07ARPRA T7_; *nimErr_ = NIM_FALSE; err = NIM_NIL;
#line 5 FX_31
T6_ = NIM_NIL; T6_ = getCurrentException(); err = ((tyObject_Defect__gsUvm1TlLk4IWPmIwVL9aHA*) (T6_));
#line 5 FX_31
T7_[0] = (*err).Sup.message; echoBinSafe(T7_, 1); { LA5_:; }
{
#line 4 FX_31
_ZN6system10eqdestroy_E3refIN6system6DefectEE(err);
}
if (NIM_UNLIKELY(*nimErr_)) goto LA3_; popCurrentException(); LA3_:; }
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; BeforeRet_: ;
nimTestErrorFlag(); popFrame();}
}
```
2024-06-15T15:40:48
2024-06-15T15:40:51
3 minutes
395.00 Kb (404,480 bytes)
```cpp
#define NIM_INTBITS 64
#include "nimbase.h"
#define nimfr_(proc, file) \
TFrame FR_; \
FR_.procname = proc; FR_.filename = file; FR_.line = 0; FR_.len = 0; nimFrame(&FR_);
#define nimfrs_(proc, file, slots, length) \
struct {TFrame* prev;NCSTRING procname;NI line;NCSTRING filename;NI len;VarSlot s[slots];} FR_; \
FR_.procname = proc; FR_.filename = file; FR_.line = 0; FR_.len = length; nimFrame((TFrame*)&FR_);
#define nimln_(n) \
FR_.line = n;
#define nimlf_(n, file) \
FR_.line = n; FR_.filename = file;
typedef struct tySequence__qwqHTkRvwhrRyENtudHQ7g tySequence__qwqHTkRvwhrRyENtudHQ7g;
typedef struct tySequence__qwqHTkRvwhrRyENtudHQ7g_Content tySequence__qwqHTkRvwhrRyENtudHQ7g_Content;
typedef struct TNimTypeV2 TNimTypeV2;
typedef struct Exception Exception;
typedef struct RootObj RootObj;
typedef struct NimStrPayload NimStrPayload;
typedef struct NimStringV2 NimStringV2;
typedef struct tySequence__W5u7dtuXI9c4BOBf9bW9bZhWQ tySequence__W5u7dtuXI9c4BOBf9bW9bZhWQ;
typedef struct tySequence__W5u7dtuXI9c4BOBf9bW9bZhWQ_Content tySequence__W5u7dtuXI9c4BOBf9bW9bZhWQ_Content;
typedef struct tyObject_Defect__4irTbIOnlxhyYExShRxlog tyObject_Defect__4irTbIOnlxhyYExShRxlog;
typedef struct tyObject_StackTraceEntry__6CL1lcV9bxEp7TPS0fN8sRQ tyObject_StackTraceEntry__6CL1lcV9bxEp7TPS0fN8sRQ;
struct tySequence__qwqHTkRvwhrRyENtudHQ7g {
NI len; tySequence__qwqHTkRvwhrRyENtudHQ7g_Content* p;
};
struct TNimTypeV2 { void* destructor;
NI size;
NI16 align;
NI16 depth;
NU32* display;
NCSTRING name;
void* traceImpl;
void* typeInfoV1;
NI flags;
};
struct RootObj {TNimTypeV2* m_type;};
struct NimStrPayload { NI cap;
NIM_CHAR data[SEQ_DECL_SIZE];
};
struct NimStringV2 { NI len;
NimStrPayload* p;
};
struct tySequence__W5u7dtuXI9c4BOBf9bW9bZhWQ {
NI len; tySequence__W5u7dtuXI9c4BOBf9bW9bZhWQ_Content* p;
};
struct Exception { RootObj Sup; Exception* parent;
NCSTRING name;
NimStringV2 message;
tySequence__W5u7dtuXI9c4BOBf9bW9bZhWQ trace;
Exception* up;
};
struct tyObject_Defect__4irTbIOnlxhyYExShRxlog { Exception Sup;};
typedef NimStringV2 tyArray__nHXaesL0DJZHyVS07ARPRA[1];
struct tySequence__qwqHTkRvwhrRyENtudHQ7g_Content { NI cap; NI data[SEQ_DECL_SIZE]; };
struct tyObject_StackTraceEntry__6CL1lcV9bxEp7TPS0fN8sRQ { NCSTRING procname;
NI line;
NCSTRING filename;
};
struct tySequence__W5u7dtuXI9c4BOBf9bW9bZhWQ_Content { NI cap; tyObject_StackTraceEntry__6CL1lcV9bxEp7TPS0fN8sRQ data[SEQ_DECL_SIZE]; };
N_LIB_PRIVATE N_NIMCALL(void*, newSeqPayload)(NI cap_p0, NI elemSize_p1, NI elemAlign_p2);
N_LIB_PRIVATE N_NOINLINE(void, raiseIndexError2)(NI i_p0, NI n_p1);
N_LIB_PRIVATE N_NIMCALL(void, _ZN3at_10eqdestroy_E3seqI3intE)(tySequence__qwqHTkRvwhrRyENtudHQ7g dest_p0);
static N_INLINE(NIM_BOOL, isObjDisplayCheck)(TNimTypeV2* source_p0, NI16 targetDepth_p1, NU32 token_p2);
static N_INLINE(void, nimFrame)(TFrame* s_p0);
N_LIB_PRIVATE N_NOINLINE(void, _ZN6system21callDepthLimitReachedE)(void);
static N_INLINE(void, popFrame)(void);
static N_INLINE(Exception*, nimBorrowCurrentException)(void);
static N_INLINE(Exception*, getCurrentException)(void);
N_LIB_PRIVATE N_NIMCALL(void, _ZN12newException7eqcopy_E3varI3refIN6system9ExceptionEEE3refIN6system9ExceptionEE4bool)(Exception** dest_p0, Exception* src_p1, NIM_BOOL cyclic_p2);
N_LIB_PRIVATE N_NIMCALL(void, echoBinSafe)(NimStringV2* args_p0, NI args_p0Len_0);
N_LIB_PRIVATE N_NIMCALL(void, _ZN6system10eqdestroy_E3refIN6system6DefectEE)(tyObject_Defect__4irTbIOnlxhyYExShRxlog* dest_p0);
static N_INLINE(void, popCurrentException)(void);
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void);
N_LIB_PRIVATE N_NIMCALL(void, nimTestErrorFlag)(void);
N_LIB_PRIVATE N_NIMCALL(void, atmdotdotatsdotdotatsdotdotatsdotchoosenimatstoolchainsatsnimminus2dot0dot4atslibatssystemdotnim_Init000)(void);
N_LIB_PRIVATE N_NIMCALL(void, NimMainModule)(void);
N_LIB_PRIVATE tySequence__qwqHTkRvwhrRyENtudHQ7g a__temp_u5;
extern NIM_THREADVAR TFrame* framePtr__system_u4431;
extern NIM_THREADVAR Exception* currException__system_u4433;
extern NIM_THREADVAR NIM_BOOL nimInErrorMode__system_u4814;
#line 549 "/home/runner/.choosenim/toolchains/nim-2.0.4/lib/system/excpt.nim"
static N_INLINE(void, nimFrame)(TFrame* s_p0) {
#line 550
{ if (!(framePtr__system_u4431 == ((TFrame*) NIM_NIL))) goto LA3_;
#line 551
(*s_p0).calldepth = ((NI16)0); }
goto LA1_;
LA3_: ;
{
#line 554
(*s_p0).calldepth = (NI16)((*framePtr__system_u4431).calldepth + ((NI16)1)); }
LA1_: ;
#line 556
(*s_p0).prev = framePtr__system_u4431;
#line 557
framePtr__system_u4431 = s_p0;
#line 558
{ if (!((*s_p0).calldepth == ((NI16)2000))) goto LA8_;
_ZN6system21callDepthLimitReachedE();
}
LA8_: ;
}
#line 99 "/home/runner/.choosenim/toolchains/nim-2.0.4/lib/system/excpt.nim"
static N_INLINE(void, popFrame)(void) {
#line 100
framePtr__system_u4431 = (*framePtr__system_u4431).prev;}
#line 237 "/home/runner/.choosenim/toolchains/nim-2.0.4/lib/system/arc.nim"
static N_INLINE(NIM_BOOL, isObjDisplayCheck)(TNimTypeV2* source_p0, NI16 targetDepth_p1, NU32 token_p2) { NIM_BOOL result; NIM_BOOL T1_; nimfr_("isObjDisplayCheck", "/home/runner/.choosenim/toolchains/nim-2.0.4/lib/system/arc.nim");
#line 238
T1_ = (NIM_BOOL)0; T1_ = (targetDepth_p1 <= (*source_p0).depth); if (!(T1_)) goto LA2_;
T1_ = ((*source_p0).display[targetDepth_p1] == token_p2);LA2_: ;
result = T1_; popFrame(); return result;}
#line 2209 "/home/runner/.choosenim/toolchains/nim-2.0.4/lib/system.nim"
static N_INLINE(Exception*, nimBorrowCurrentException)(void) { Exception* result; nimfr_("nimBorrowCurrentException", "/home/runner/.choosenim/toolchains/nim-2.0.4/lib/system.nim");
#line 2212
result = currException__system_u4433; popFrame(); return result;}
#line 2205 "/home/runner/.choosenim/toolchains/nim-2.0.4/lib/system.nim"
static N_INLINE(Exception*, getCurrentException)(void) { Exception* result; nimfr_("getCurrentException", "/home/runner/.choosenim/toolchains/nim-2.0.4/lib/system.nim"); result = NIM_NIL;
#line 247 "/home/runner/.choosenim/toolchains/nim-2.0.4/lib/std/typedthreads.nim"
_ZN12newException7eqcopy_E3varI3refIN6system9ExceptionEEE3refIN6system9ExceptionEE4bool(&result, currException__system_u4433, NIM_FALSE);
popFrame(); return result;}
#line 137 "/home/runner/.choosenim/toolchains/nim-2.0.4/lib/system/excpt.nim"
static N_INLINE(void, popCurrentException)(void) {
#line 247 "/home/runner/.choosenim/toolchains/nim-2.0.4/lib/std/typedthreads.nim"
_ZN12newException7eqcopy_E3varI3refIN6system9ExceptionEEE3refIN6system9ExceptionEE4bool(&currException__system_u4433, (*currException__system_u4433).up, NIM_FALSE);
}
#line 423 "/home/runner/.choosenim/toolchains/nim-2.0.4/lib/system/excpt.nim"
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void) { NIM_BOOL* result;
#line 424
result = (&nimInErrorMode__system_u4814); return result;}
N_LIB_PRIVATE void PreMainInner(void) {
}
N_LIB_PRIVATE int cmdCount;
N_LIB_PRIVATE char** cmdLine;
N_LIB_PRIVATE char** gEnv;
N_LIB_PRIVATE void PreMain(void) {
#if 0
void (*volatile inner)(void);
inner = PreMainInner;
atmdotdotatsdotdotatsdotdotatsdotchoosenimatstoolchainsatsnimminus2dot0dot4atslibatssystemdotnim_Init000();
(*inner)();
#else
atmdotdotatsdotdotatsdotdotatsdotchoosenimatstoolchainsatsnimminus2dot0dot4atslibatssystemdotnim_Init000();
PreMainInner();
#endif
}
N_LIB_PRIVATE N_CDECL(void, NimMainInner)(void) {
NimMainModule();
}
N_CDECL(void, NimMain)(void) {
#if 0
void (*volatile inner)(void);
PreMain();
inner = NimMainInner;
(*inner)();
#else
PreMain();
NimMainInner();
#endif
}
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) {
#line 999999 "generated_not_to_break_here"
{
NIM_BOOL* nimErr_; nimfr_("temp", "/home/runner/work/nimrun-action-minefield/nimrun-action-minefield/temp.nim");nimErr_ = nimErrorFlag();
#line 2 "/home/runner/work/nimrun-action-minefield/nimrun-action-minefield/temp.nim"
a__temp_u5.len = 1; a__temp_u5.p = (tySequence__qwqHTkRvwhrRyENtudHQ7g_Content*) newSeqPayload(1, sizeof(NI), NIM_ALIGNOF(NI)); a__temp_u5.p->data[0] = ((NI)0);
#line 3
if (((NI)1) < 0 || ((NI)1) >= a__temp_u5.len){ raiseIndexError2(((NI)1),a__temp_u5.len-1); goto LA1_; } a__temp_u5.p->data[((NI)1)] = ((NI)0);
#line 2
_ZN3at_10eqdestroy_E3seqI3intE(a__temp_u5);
if (NIM_UNLIKELY(*nimErr_)) { LA1_:; if (isObjDisplayCheck(nimBorrowCurrentException()->Sup.m_type, 2, 718498816)) {
#line 4
tyObject_Defect__4irTbIOnlxhyYExShRxlog* err; Exception* T6_; tyArray__nHXaesL0DJZHyVS07ARPRA T7_; *nimErr_ = NIM_FALSE; err = NIM_NIL;
#line 5
T6_ = NIM_NIL; T6_ = getCurrentException(); err = ((tyObject_Defect__4irTbIOnlxhyYExShRxlog*) (T6_));
#line 5 "/home/runner/work/nimrun-action-minefield/nimrun-action-minefield/temp.nim"
T7_[0] = (*err).Sup.message; echoBinSafe(T7_, 1); { LA5_:; }
{
#line 4
_ZN6system10eqdestroy_E3refIN6system6DefectEE(err);
}
if (NIM_UNLIKELY(*nimErr_)) goto LA3_; popCurrentException(); LA3_:; }
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; BeforeRet_: ;
nimTestErrorFlag(); popFrame();}
}
```
2024-06-15T15:40:51
2024-06-15T15:40:52
1 minutes
395.00 Kb (404,480 bytes)
```cpp
#define NIM_INTBITS 64
#include "nimbase.h"
#define nimfr_(proc, file) \
TFrame FR_; \
FR_.procname = proc; FR_.filename = file; FR_.line = 0; FR_.len = 0; nimFrame(&FR_);
#define nimfrs_(proc, file, slots, length) \
struct {TFrame* prev;NCSTRING procname;NI line;NCSTRING filename;NI len;VarSlot s[slots];} FR_; \
FR_.procname = proc; FR_.filename = file; FR_.line = 0; FR_.len = length; nimFrame((TFrame*)&FR_);
#define nimln_(n) \
FR_.line = n;
#define nimlf_(n, file) \
FR_.line = n; FR_.filename = file;
typedef struct tySequence__qwqHTkRvwhrRyENtudHQ7g tySequence__qwqHTkRvwhrRyENtudHQ7g;
typedef struct tySequence__qwqHTkRvwhrRyENtudHQ7g_Content tySequence__qwqHTkRvwhrRyENtudHQ7g_Content;
typedef struct TNimTypeV2 TNimTypeV2;
typedef struct Exception Exception;
typedef struct RootObj RootObj;
typedef struct NimStrPayload NimStrPayload;
typedef struct NimStringV2 NimStringV2;
typedef struct tySequence__W5u7dtuXI9c4BOBf9bW9bZhWQ tySequence__W5u7dtuXI9c4BOBf9bW9bZhWQ;
typedef struct tySequence__W5u7dtuXI9c4BOBf9bW9bZhWQ_Content tySequence__W5u7dtuXI9c4BOBf9bW9bZhWQ_Content;
typedef struct tyObject_Defect__4irTbIOnlxhyYExShRxlog tyObject_Defect__4irTbIOnlxhyYExShRxlog;
typedef struct tyObject_StackTraceEntry__6CL1lcV9bxEp7TPS0fN8sRQ tyObject_StackTraceEntry__6CL1lcV9bxEp7TPS0fN8sRQ;
struct tySequence__qwqHTkRvwhrRyENtudHQ7g {
NI len; tySequence__qwqHTkRvwhrRyENtudHQ7g_Content* p;
};
struct TNimTypeV2 { void* destructor;
NI size;
NI16 align;
NI16 depth;
NU32* display;
NCSTRING name;
void* traceImpl;
void* typeInfoV1;
NI flags;
};
struct RootObj {TNimTypeV2* m_type;};
struct NimStrPayload { NI cap;
NIM_CHAR data[SEQ_DECL_SIZE];
};
struct NimStringV2 { NI len;
NimStrPayload* p;
};
struct tySequence__W5u7dtuXI9c4BOBf9bW9bZhWQ {
NI len; tySequence__W5u7dtuXI9c4BOBf9bW9bZhWQ_Content* p;
};
struct Exception { RootObj Sup; Exception* parent;
NCSTRING name;
NimStringV2 message;
tySequence__W5u7dtuXI9c4BOBf9bW9bZhWQ trace;
Exception* up;
};
struct tyObject_Defect__4irTbIOnlxhyYExShRxlog { Exception Sup;};
typedef NimStringV2 tyArray__nHXaesL0DJZHyVS07ARPRA[1];
struct tySequence__qwqHTkRvwhrRyENtudHQ7g_Content { NI cap; NI data[SEQ_DECL_SIZE]; };
struct tyObject_StackTraceEntry__6CL1lcV9bxEp7TPS0fN8sRQ { NCSTRING procname;
NI line;
NCSTRING filename;
};
struct tySequence__W5u7dtuXI9c4BOBf9bW9bZhWQ_Content { NI cap; tyObject_StackTraceEntry__6CL1lcV9bxEp7TPS0fN8sRQ data[SEQ_DECL_SIZE]; };
N_LIB_PRIVATE N_NIMCALL(void*, newSeqPayload)(NI cap_p0, NI elemSize_p1, NI elemAlign_p2);
N_LIB_PRIVATE N_NOINLINE(void, raiseIndexError2)(NI i_p0, NI n_p1);
N_LIB_PRIVATE N_NIMCALL(void, _ZN3at_10eqdestroy_E3seqI3intE)(tySequence__qwqHTkRvwhrRyENtudHQ7g dest_p0);
static N_INLINE(NIM_BOOL, isObjDisplayCheck)(TNimTypeV2* source_p0, NI16 targetDepth_p1, NU32 token_p2);
static N_INLINE(void, nimFrame)(TFrame* s_p0);
N_LIB_PRIVATE N_NOINLINE(void, _ZN6system21callDepthLimitReachedE)(void);
static N_INLINE(void, popFrame)(void);
static N_INLINE(Exception*, nimBorrowCurrentException)(void);
static N_INLINE(Exception*, getCurrentException)(void);
N_LIB_PRIVATE N_NIMCALL(void, _ZN12newException7eqcopy_E3varI3refIN6system9ExceptionEEE3refIN6system9ExceptionEE4bool)(Exception** dest_p0, Exception* src_p1, NIM_BOOL cyclic_p2);
N_LIB_PRIVATE N_NIMCALL(void, echoBinSafe)(NimStringV2* args_p0, NI args_p0Len_0);
N_LIB_PRIVATE N_NIMCALL(void, _ZN6system10eqdestroy_E3refIN6system6DefectEE)(tyObject_Defect__4irTbIOnlxhyYExShRxlog* dest_p0);
static N_INLINE(void, popCurrentException)(void);
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void);
N_LIB_PRIVATE N_NIMCALL(void, nimTestErrorFlag)(void);
N_LIB_PRIVATE N_NIMCALL(void, atmdotdotatsdotdotatsdotdotatsdotchoosenimatstoolchainsatsnimminus2dot0dot4atslibatssystemdotnim_Init000)(void);
N_LIB_PRIVATE N_NIMCALL(void, NimMainModule)(void);
N_LIB_PRIVATE tySequence__qwqHTkRvwhrRyENtudHQ7g a__temp_u5;
extern NIM_THREADVAR TFrame* framePtr__system_u4431;
extern NIM_THREADVAR Exception* currException__system_u4433;
extern NIM_THREADVAR NIM_BOOL nimInErrorMode__system_u4814;
#line 549 "/home/runner/.choosenim/toolchains/nim-2.0.4/lib/system/excpt.nim"
static N_INLINE(void, nimFrame)(TFrame* s_p0) {
#line 550
{ if (!(framePtr__system_u4431 == ((TFrame*) NIM_NIL))) goto LA3_;
#line 551
(*s_p0).calldepth = ((NI16)0); }
goto LA1_;
LA3_: ;
{
#line 554
(*s_p0).calldepth = (NI16)((*framePtr__system_u4431).calldepth + ((NI16)1)); }
LA1_: ;
#line 556
(*s_p0).prev = framePtr__system_u4431;
#line 557
framePtr__system_u4431 = s_p0;
#line 558
{ if (!((*s_p0).calldepth == ((NI16)2000))) goto LA8_;
_ZN6system21callDepthLimitReachedE();
}
LA8_: ;
}
#line 99 "/home/runner/.choosenim/toolchains/nim-2.0.4/lib/system/excpt.nim"
static N_INLINE(void, popFrame)(void) {
#line 100
framePtr__system_u4431 = (*framePtr__system_u4431).prev;}
#line 237 "/home/runner/.choosenim/toolchains/nim-2.0.4/lib/system/arc.nim"
static N_INLINE(NIM_BOOL, isObjDisplayCheck)(TNimTypeV2* source_p0, NI16 targetDepth_p1, NU32 token_p2) { NIM_BOOL result; NIM_BOOL T1_; nimfr_("isObjDisplayCheck", "/home/runner/.choosenim/toolchains/nim-2.0.4/lib/system/arc.nim");
#line 238
T1_ = (NIM_BOOL)0; T1_ = (targetDepth_p1 <= (*source_p0).depth); if (!(T1_)) goto LA2_;
T1_ = ((*source_p0).display[targetDepth_p1] == token_p2);LA2_: ;
result = T1_; popFrame(); return result;}
#line 2209 "/home/runner/.choosenim/toolchains/nim-2.0.4/lib/system.nim"
static N_INLINE(Exception*, nimBorrowCurrentException)(void) { Exception* result; nimfr_("nimBorrowCurrentException", "/home/runner/.choosenim/toolchains/nim-2.0.4/lib/system.nim");
#line 2212
result = currException__system_u4433; popFrame(); return result;}
#line 2205 "/home/runner/.choosenim/toolchains/nim-2.0.4/lib/system.nim"
static N_INLINE(Exception*, getCurrentException)(void) { Exception* result; nimfr_("getCurrentException", "/home/runner/.choosenim/toolchains/nim-2.0.4/lib/system.nim"); result = NIM_NIL;
#line 247 "/home/runner/.choosenim/toolchains/nim-2.0.4/lib/std/typedthreads.nim"
_ZN12newException7eqcopy_E3varI3refIN6system9ExceptionEEE3refIN6system9ExceptionEE4bool(&result, currException__system_u4433, NIM_FALSE);
popFrame(); return result;}
#line 137 "/home/runner/.choosenim/toolchains/nim-2.0.4/lib/system/excpt.nim"
static N_INLINE(void, popCurrentException)(void) {
#line 247 "/home/runner/.choosenim/toolchains/nim-2.0.4/lib/std/typedthreads.nim"
_ZN12newException7eqcopy_E3varI3refIN6system9ExceptionEEE3refIN6system9ExceptionEE4bool(&currException__system_u4433, (*currException__system_u4433).up, NIM_FALSE);
}
#line 423 "/home/runner/.choosenim/toolchains/nim-2.0.4/lib/system/excpt.nim"
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void) { NIM_BOOL* result;
#line 424
result = (&nimInErrorMode__system_u4814); return result;}
N_LIB_PRIVATE void PreMainInner(void) {
}
N_LIB_PRIVATE int cmdCount;
N_LIB_PRIVATE char** cmdLine;
N_LIB_PRIVATE char** gEnv;
N_LIB_PRIVATE void PreMain(void) {
#if 0
void (*volatile inner)(void);
inner = PreMainInner;
atmdotdotatsdotdotatsdotdotatsdotchoosenimatstoolchainsatsnimminus2dot0dot4atslibatssystemdotnim_Init000();
(*inner)();
#else
atmdotdotatsdotdotatsdotdotatsdotchoosenimatstoolchainsatsnimminus2dot0dot4atslibatssystemdotnim_Init000();
PreMainInner();
#endif
}
N_LIB_PRIVATE N_CDECL(void, NimMainInner)(void) {
NimMainModule();
}
N_CDECL(void, NimMain)(void) {
#if 0
void (*volatile inner)(void);
PreMain();
inner = NimMainInner;
(*inner)();
#else
PreMain();
NimMainInner();
#endif
}
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) {
#line 999999 "generated_not_to_break_here"
{
NIM_BOOL* nimErr_; nimfr_("temp", "/home/runner/work/nimrun-action-minefield/nimrun-action-minefield/temp.nim");nimErr_ = nimErrorFlag();
#line 2 "/home/runner/work/nimrun-action-minefield/nimrun-action-minefield/temp.nim"
a__temp_u5.len = 1; a__temp_u5.p = (tySequence__qwqHTkRvwhrRyENtudHQ7g_Content*) newSeqPayload(1, sizeof(NI), NIM_ALIGNOF(NI)); a__temp_u5.p->data[0] = ((NI)0);
#line 3
if (((NI)1) < 0 || ((NI)1) >= a__temp_u5.len){ raiseIndexError2(((NI)1),a__temp_u5.len-1); goto LA1_; } a__temp_u5.p->data[((NI)1)] = ((NI)0);
#line 2
_ZN3at_10eqdestroy_E3seqI3intE(a__temp_u5);
if (NIM_UNLIKELY(*nimErr_)) { LA1_:; if (isObjDisplayCheck(nimBorrowCurrentException()->Sup.m_type, 2, 718498816)) {
#line 4
tyObject_Defect__4irTbIOnlxhyYExShRxlog* err; Exception* T6_; tyArray__nHXaesL0DJZHyVS07ARPRA T7_; *nimErr_ = NIM_FALSE; err = NIM_NIL;
#line 5
T6_ = NIM_NIL; T6_ = getCurrentException(); err = ((tyObject_Defect__4irTbIOnlxhyYExShRxlog*) (T6_));
#line 5 "/home/runner/work/nimrun-action-minefield/nimrun-action-minefield/temp.nim"
T7_[0] = (*err).Sup.message; echoBinSafe(T7_, 1); { LA5_:; }
{
#line 4
_ZN6system10eqdestroy_E3refIN6system6DefectEE(err);
}
if (NIM_UNLIKELY(*nimErr_)) goto LA3_; popCurrentException(); LA3_:; }
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; BeforeRet_: ;
nimTestErrorFlag(); popFrame();}
}
```
2024-06-15T15:40:53
2024-06-15T15:40:54
1 minutes
389.96 Kb (399,320 bytes)
```cpp
#define NIM_INTBITS 64
#include "nimbase.h"
#define nimfr_(proc, file) \
TFrame FR_; \
FR_.procname = proc; FR_.filename = file; FR_.line = 0; FR_.len = 0; nimFrame(&FR_);
#define nimfrs_(proc, file, slots, length) \
struct {TFrame* prev;NCSTRING procname;NI line;NCSTRING filename;NI len;VarSlot s[slots];} FR_; \
FR_.procname = proc; FR_.filename = file; FR_.line = 0; FR_.len = length; nimFrame((TFrame*)&FR_);
#define nimln_(n) \
FR_.line = n;
#define nimlf_(n, file) \
FR_.line = n; FR_.filename = file;
typedef struct tySequence__qwqHTkRvwhrRyENtudHQ7g tySequence__qwqHTkRvwhrRyENtudHQ7g;
typedef struct tySequence__qwqHTkRvwhrRyENtudHQ7g_Content tySequence__qwqHTkRvwhrRyENtudHQ7g_Content;
typedef struct TNimTypeV2 TNimTypeV2;
typedef struct Exception Exception;
typedef struct RootObj RootObj;
typedef struct NimStrPayload NimStrPayload;
typedef struct NimStringV2 NimStringV2;
typedef struct tySequence__2ALwPJKv8Nz8mMm4Hy9crdw tySequence__2ALwPJKv8Nz8mMm4Hy9crdw;
typedef struct tySequence__2ALwPJKv8Nz8mMm4Hy9crdw_Content tySequence__2ALwPJKv8Nz8mMm4Hy9crdw_Content;
typedef struct tyObject_Defect__Iv1kmFgzznzmeWaBCBYLxw tyObject_Defect__Iv1kmFgzznzmeWaBCBYLxw;
typedef struct tyObject_StackTraceEntry__nOjYJiLBbFH64nNmW1UArA tyObject_StackTraceEntry__nOjYJiLBbFH64nNmW1UArA;
struct tySequence__qwqHTkRvwhrRyENtudHQ7g {
NI len; tySequence__qwqHTkRvwhrRyENtudHQ7g_Content* p;
};
struct TNimTypeV2 { void* destructor;
NI size;
NI16 align;
NI16 depth;
NU32* display;
NCSTRING name;
void* traceImpl;
void* typeInfoV1;
NI flags;
};
struct RootObj {TNimTypeV2* m_type;};
struct NimStrPayload { NI cap;
NIM_CHAR data[SEQ_DECL_SIZE];
};
struct NimStringV2 { NI len;
NimStrPayload* p;
};
struct tySequence__2ALwPJKv8Nz8mMm4Hy9crdw {
NI len; tySequence__2ALwPJKv8Nz8mMm4Hy9crdw_Content* p;
};
struct Exception { RootObj Sup; Exception* parent;
NCSTRING name;
NimStringV2 message;
tySequence__2ALwPJKv8Nz8mMm4Hy9crdw trace;
Exception* up;
};
struct tyObject_Defect__Iv1kmFgzznzmeWaBCBYLxw { Exception Sup;};
typedef NimStringV2 tyArray__nHXaesL0DJZHyVS07ARPRA[1];
struct tySequence__qwqHTkRvwhrRyENtudHQ7g_Content { NI cap; NI data[SEQ_DECL_SIZE]; };
struct tyObject_StackTraceEntry__nOjYJiLBbFH64nNmW1UArA { NCSTRING procname;
NI line;
NCSTRING filename;
};
struct tySequence__2ALwPJKv8Nz8mMm4Hy9crdw_Content { NI cap; tyObject_StackTraceEntry__nOjYJiLBbFH64nNmW1UArA data[SEQ_DECL_SIZE]; };
N_LIB_PRIVATE N_NIMCALL(void*, newSeqPayload)(NI cap_p0, NI elemSize_p1, NI elemAlign_p2);
N_LIB_PRIVATE N_NOINLINE(void, raiseIndexError2)(NI i_p0, NI n_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___temp_u10)(tySequence__qwqHTkRvwhrRyENtudHQ7g dest_p0);
static N_INLINE(NIM_BOOL, isObjDisplayCheck)(TNimTypeV2* source_p0, NI16 targetDepth_p1, NU32 token_p2);
static N_INLINE(void, nimFrame)(TFrame* s_p0);
N_LIB_PRIVATE N_NOINLINE(void, callDepthLimitReached__system_u5018)(void);
static N_INLINE(void, popFrame)(void);
static N_INLINE(Exception*, nimBorrowCurrentException)(void);
static N_INLINE(Exception*, getCurrentException)(void);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___stdZtypedthreads_u207)(Exception** dest_p0, Exception* src_p1, NIM_BOOL cyclic_p2);
N_LIB_PRIVATE N_NIMCALL(void, echoBinSafe)(NimStringV2* args_p0, NI args_p0Len_0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___temp_u171)(tyObject_Defect__Iv1kmFgzznzmeWaBCBYLxw* dest_p0);
static N_INLINE(void, popCurrentException)(void);
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void);
N_LIB_PRIVATE N_NIMCALL(void, nimTestErrorFlag)(void);
N_LIB_PRIVATE N_NIMCALL(void, atmdotdotatsdotdotatsdotdotatsdotchoosenimatstoolchainsatsnimminus2dot0dot0atslibatssystemdotnim_Init000)(void);
N_LIB_PRIVATE N_NIMCALL(void, NimMainModule)(void);
N_LIB_PRIVATE tySequence__qwqHTkRvwhrRyENtudHQ7g a__temp_u5;
extern NIM_THREADVAR TFrame* framePtr__system_u4417;
extern NIM_THREADVAR Exception* currException__system_u4419;
extern NIM_THREADVAR NIM_BOOL nimInErrorMode__system_u4800;
#line 549 "/home/runner/.choosenim/toolchains/nim-2.0.0/lib/system/excpt.nim"
static N_INLINE(void, nimFrame)(TFrame* s_p0) {
#line 550
{ if (!(framePtr__system_u4417 == ((TFrame*) NIM_NIL))) goto LA3_;
#line 551
(*s_p0).calldepth = ((NI16)0); }
goto LA1_;
LA3_: ;
{
#line 554
(*s_p0).calldepth = (NI16)((*framePtr__system_u4417).calldepth + ((NI16)1)); }
LA1_: ;
#line 556
(*s_p0).prev = framePtr__system_u4417;
#line 557
framePtr__system_u4417 = s_p0;
#line 558
{ if (!((*s_p0).calldepth == ((NI16)2000))) goto LA8_;
callDepthLimitReached__system_u5018();
}
LA8_: ;
}
#line 99 "/home/runner/.choosenim/toolchains/nim-2.0.0/lib/system/excpt.nim"
static N_INLINE(void, popFrame)(void) {
#line 100
framePtr__system_u4417 = (*framePtr__system_u4417).prev;}
#line 237 "/home/runner/.choosenim/toolchains/nim-2.0.0/lib/system/arc.nim"
static N_INLINE(NIM_BOOL, isObjDisplayCheck)(TNimTypeV2* source_p0, NI16 targetDepth_p1, NU32 token_p2) { NIM_BOOL result; NIM_BOOL T1_; nimfr_("isObjDisplayCheck", "/home/runner/.choosenim/toolchains/nim-2.0.0/lib/system/arc.nim"); result = (NIM_BOOL)0;
#line 238
T1_ = (NIM_BOOL)0; T1_ = (targetDepth_p1 <= (*source_p0).depth); if (!(T1_)) goto LA2_;
T1_ = ((*source_p0).display[targetDepth_p1] == token_p2);LA2_: ;
result = T1_; popFrame(); return result;}
#line 2209 "/home/runner/.choosenim/toolchains/nim-2.0.0/lib/system.nim"
static N_INLINE(Exception*, nimBorrowCurrentException)(void) { Exception* result; nimfr_("nimBorrowCurrentException", "/home/runner/.choosenim/toolchains/nim-2.0.0/lib/system.nim"); result = NIM_NIL;
#line 2212
result = currException__system_u4419; popFrame(); return result;}
#line 2205 "/home/runner/.choosenim/toolchains/nim-2.0.0/lib/system.nim"
static N_INLINE(Exception*, getCurrentException)(void) { Exception* result; nimfr_("getCurrentException", "/home/runner/.choosenim/toolchains/nim-2.0.0/lib/system.nim"); result = NIM_NIL;
#line 247 "/home/runner/.choosenim/toolchains/nim-2.0.0/lib/std/typedthreads.nim"
eqcopy___stdZtypedthreads_u207(&result, currException__system_u4419, NIM_FALSE);
popFrame(); return result;}
#line 137 "/home/runner/.choosenim/toolchains/nim-2.0.0/lib/system/excpt.nim"
static N_INLINE(void, popCurrentException)(void) {
#line 247 "/home/runner/.choosenim/toolchains/nim-2.0.0/lib/std/typedthreads.nim"
eqcopy___stdZtypedthreads_u207(&currException__system_u4419, (*currException__system_u4419).up, NIM_FALSE);
}
#line 423 "/home/runner/.choosenim/toolchains/nim-2.0.0/lib/system/excpt.nim"
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void) { NIM_BOOL* result; result = (NIM_BOOL*)0;
#line 424
result = (&nimInErrorMode__system_u4800); return result;}
N_LIB_PRIVATE void PreMainInner(void) {
}
N_LIB_PRIVATE int cmdCount;
N_LIB_PRIVATE char** cmdLine;
N_LIB_PRIVATE char** gEnv;
N_LIB_PRIVATE void PreMain(void) {
#if 0
void (*volatile inner)(void);
inner = PreMainInner;
atmdotdotatsdotdotatsdotdotatsdotchoosenimatstoolchainsatsnimminus2dot0dot0atslibatssystemdotnim_Init000();
(*inner)();
#else
atmdotdotatsdotdotatsdotdotatsdotchoosenimatstoolchainsatsnimminus2dot0dot0atslibatssystemdotnim_Init000();
PreMainInner();
#endif
}
N_LIB_PRIVATE N_CDECL(void, NimMainInner)(void) {
NimMainModule();
}
N_CDECL(void, NimMain)(void) {
#if 0
void (*volatile inner)(void);
PreMain();
inner = NimMainInner;
(*inner)();
#else
PreMain();
NimMainInner();
#endif
}
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) {
#line 999999 "generated_not_to_break_here"
{
NIM_BOOL* nimErr_; nimfr_("temp", "/home/runner/work/nimrun-action-minefield/nimrun-action-minefield/temp.nim");nimErr_ = nimErrorFlag();
#line 2 "/home/runner/work/nimrun-action-minefield/nimrun-action-minefield/temp.nim"
a__temp_u5.len = 1; a__temp_u5.p = (tySequence__qwqHTkRvwhrRyENtudHQ7g_Content*) newSeqPayload(1, sizeof(NI), NIM_ALIGNOF(NI)); a__temp_u5.p->data[0] = ((NI)0);
#line 3
if (((NI)1) < 0 || ((NI)1) >= a__temp_u5.len){ raiseIndexError2(((NI)1),a__temp_u5.len-1); goto LA1_; } a__temp_u5.p->data[((NI)1)] = ((NI)0);
#line 2
eqdestroy___temp_u10(a__temp_u5);
if (NIM_UNLIKELY(*nimErr_)) { LA1_:; if (isObjDisplayCheck(nimBorrowCurrentException()->Sup.m_type, 2, 4251228160)) {
#line 4
tyObject_Defect__Iv1kmFgzznzmeWaBCBYLxw* err; Exception* T6_; tyArray__nHXaesL0DJZHyVS07ARPRA T7_; *nimErr_ = NIM_FALSE; err = NIM_NIL;
#line 5
T6_ = NIM_NIL; T6_ = getCurrentException(); err = ((tyObject_Defect__Iv1kmFgzznzmeWaBCBYLxw*) (T6_));
#line 5 "/home/runner/work/nimrun-action-minefield/nimrun-action-minefield/temp.nim"
T7_[0] = (*err).Sup.message; echoBinSafe(T7_, 1); { LA5_:; }
{
#line 4
eqdestroy___temp_u171(err);
}
if (NIM_UNLIKELY(*nimErr_)) goto LA3_; popCurrentException(); LA3_:; }
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_; BeforeRet_: ;
nimTestErrorFlag(); popFrame();}
}
```
2024-06-15T15:40:57
2024-06-15T15:40:58
1 minutes
399.02 Kb (408,600 bytes)
```cpp
#define NIM_INTBITS 64
#include "nimbase.h"
#include 2024-06-15T15:41:01
2024-06-15T15:41:02
1 minutes
399.02 Kb (408,600 bytes)
```cpp
#define NIM_INTBITS 64
#include "nimbase.h"
#include 2024-06-15T15:41:04
2024-06-15T15:41:04
399.02 Kb (408,600 bytes)
```cpp
#define NIM_INTBITS 64
#include "nimbase.h"
#include 2024-06-15T15:41:06
2024-06-15T15:41:06
399.02 Kb (408,600 bytes)
```cpp
#define NIM_INTBITS 64
#include "nimbase.h"
#include 2024-06-15T15:41:08
2024-06-15T15:41:08
11.4.0
14.0.0
20.3
2024-06-15T15:40:16Z
5
nim c --gc:orc -d:useMalloc -d:nimArcDebug -d:nimArcIds -d:nimAllocPagesViaMalloc -d:useSysAssert -d:useGcAssert -d:nimLeakDetector --debugger:native --debuginfo:on -d:nimDebug -d:nimDebugDlOpen -d:ssl -d:nimDisableCertificateValidation --forceBuild:on --colors:off --verbosity:0 --hints:off --lineTrace:off --nimcache:/home/runner/work/nimrun-action-minefield/nimrun-action-minefield --out:/home/runner/work/nimrun-action-minefield/nimrun-action-minefield/temp /home/runner/work/nimrun-action-minefield/nimrun-action-minefield/temp.nim && valgrind /home/runner/work/nimrun-action-minefield/nimrun-action-minefield/temp
:robot: Bug found in 33 minutes
bisecting 8
commits at 0
commits per second
testing only