add best effort guesses for error messages in core/stuff and opt/comp.c
This commit is contained in:
parent
5790d126cd
commit
3362d46854
@ -41,11 +41,11 @@ NORETURN NOINLINE void fatal(char* s) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
NOINLINE B c1F(B f, B x) { dec(x);
|
NOINLINE B c1F(B f, B x) { dec(x);
|
||||||
if (isMd(f)) thrM("Calling a modifier");
|
if (isMd(f)) thrM("_Mod𝕩: Calling a modifier");
|
||||||
return inc(VALIDATE(f));
|
return inc(VALIDATE(f));
|
||||||
}
|
}
|
||||||
NOINLINE B c2F(B f, B w, B x) { dec(w); dec(x);
|
NOINLINE B c2F(B f, B w, B x) { dec(w); dec(x);
|
||||||
if (isMd(f)) thrM("Calling a modifier");
|
if (isMd(f)) thrM("𝕨_Mod_𝕩: Calling a modifier");
|
||||||
return inc(VALIDATE(f));
|
return inc(VALIDATE(f));
|
||||||
}
|
}
|
||||||
NOINLINE void value_freeF(Value* x) { value_free(x); }
|
NOINLINE void value_freeF(Value* x) { value_free(x); }
|
||||||
@ -54,15 +54,15 @@ void noop_visit(Value* x) { }
|
|||||||
#if HEAP_VERIFY
|
#if HEAP_VERIFY
|
||||||
void arr_visit(Value* x) { VISIT_SHAPE(x); }
|
void arr_visit(Value* x) { VISIT_SHAPE(x); }
|
||||||
#endif
|
#endif
|
||||||
NOINLINE B c1_bad(B f, B x) { thrM("This function can't be called monadically"); }
|
NOINLINE B c1_bad(B f, B x) { thrM("Fn𝕩: This function can't be called monadically"); }
|
||||||
NOINLINE B c2_bad(B f, B w, B x) { thrM("This function can't be called dyadically"); }
|
NOINLINE B c2_bad(B f, B w, B x) { thrM("𝕨Fn𝕩: This function can't be called dyadically"); }
|
||||||
NOINLINE B m1c1_bad(Md1D* d, B x) { thrM("This 1-modifier can't be called monadically"); }
|
NOINLINE B m1c1_bad(Md1D* d, B x) { thrM("_Mod𝕩: This 1-modifier can't be called monadically"); }
|
||||||
NOINLINE B m1c2_bad(Md1D* d, B w, B x) { thrM("This 1-modifier can't be called dyadically"); }
|
NOINLINE B m1c2_bad(Md1D* d, B w, B x) { thrM("𝕨_Mod𝕩: This 1-modifier can't be called dyadically"); }
|
||||||
NOINLINE B m2c1_bad(Md2D* d, B x) { thrM("This 2-modifier can't be called monadically"); }
|
NOINLINE B m2c1_bad(Md2D* d, B x) { thrM("_Mod_𝕩: This 2-modifier can't be called monadically"); }
|
||||||
NOINLINE B m2c2_bad(Md2D* d, B w, B x) { thrM("This 2-modifier can't be called dyadically"); }
|
NOINLINE B m2c2_bad(Md2D* d, B w, B x) { thrM("𝕨_Mod_𝕩: This 2-modifier can't be called dyadically"); }
|
||||||
|
|
||||||
NOINLINE B md_c1(B t, B x) { thrM("Cannot call a modifier"); }
|
NOINLINE B md_c1(B t, B x) { thrM("_Mod𝕩: Cannot call a modifier"); }
|
||||||
NOINLINE B md_c2(B t, B w, B x) { thrM("Cannot call a modifier"); }
|
NOINLINE B md_c2(B t, B w, B x) { thrM("𝕨_Mod_𝕩: Cannot call a modifier"); }
|
||||||
NOINLINE B arr_c1(B t, B x) { dec(x); return inc(t); }
|
NOINLINE B arr_c1(B t, B x) { dec(x); return inc(t); }
|
||||||
NOINLINE B arr_c2(B t, B w, B x) { dec(w); dec(x); return inc(t); }
|
NOINLINE B arr_c2(B t, B w, B x) { dec(w); dec(x); return inc(t); }
|
||||||
|
|
||||||
@ -452,7 +452,7 @@ B bqn_merge(B x, u32 type) {
|
|||||||
if (isAtm(xf)) { dec(xf); return x; }
|
if (isAtm(xf)) { dec(xf); return x; }
|
||||||
i32 xfr = RNK(xf);
|
i32 xfr = RNK(xf);
|
||||||
Arr* r = emptyWithFill(getFillR(xf));
|
Arr* r = emptyWithFill(getFillR(xf));
|
||||||
if (xr+xfr > UR_MAX) thrM(">: Result rank too large");
|
if (xr+xfr > UR_MAX) thrM(">𝕩: Result rank too large");
|
||||||
usz* rsh = arr_shAlloc(r, xr+xfr);
|
usz* rsh = arr_shAlloc(r, xr+xfr);
|
||||||
if (rsh) {
|
if (rsh) {
|
||||||
shcpy (rsh , SH(x), xr);
|
shcpy (rsh , SH(x), xr);
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user