mirror of
https://github.com/nim-lang/Nim.git
synced 2025-12-28 17:04:41 +00:00
* fix #10053 FieldError for vm * fixup * FieldError now also shows runtime value of discriminant * fix field error reporting in vm * also report culprit line info in err msg * fix errors for newruntime 2 * fix for js * fixup * PRTEMP4 * works * works * works perfect * refactor * std/private/repr_impl * suppport --gc:arc * cleanup * refactor * simplify * simplify * simplify * fixup * move out compiler.vmgen.genCustom * fixup * fixup * add tests * revert compiler/debugutils.nim * simplify reprDiscriminant * fixup * lib/std/private/repr_impl.nim -> lib/system/repr_impl.nim * try to fix D20210812T165220 * honor --declaredlocs * control toFileLineCol via --declaredlocs
16 lines
427 B
Nim
16 lines
427 B
Nim
#[
|
|
other APIs common to system/repr and system/reprjs could be refactored here, eg:
|
|
* reprChar
|
|
* reprBool
|
|
* reprStr
|
|
|
|
Another possibility in future work would be to have a single include file instead
|
|
of system/repr and system/reprjs, and use `when defined(js)` inside it.
|
|
]#
|
|
|
|
proc reprDiscriminant*(e: int, typ: PNimType): string {.compilerRtl.} =
|
|
case typ.kind
|
|
of tyEnum: reprEnum(e, typ)
|
|
of tyBool: $(e != 0)
|
|
else: $e
|