some love for the testsuite; fixed regressions
This commit is contained in:
parent
566ee874cd
commit
24ae0c387f
19 changed files with 133 additions and 51 deletions
|
|
@ -11,7 +11,7 @@ when declared(NimString):
|
|||
# we are in system module:
|
||||
{.pragma: codegenType, compilerproc.}
|
||||
else:
|
||||
{.pragma: codegenType.}
|
||||
{.pragma: codegenType, importc.}
|
||||
|
||||
type
|
||||
# This should be he same as ast.TTypeKind
|
||||
|
|
@ -65,7 +65,7 @@ type
|
|||
tyBigNum,
|
||||
|
||||
TNimNodeKind = enum nkNone, nkSlot, nkList, nkCase
|
||||
TNimNode {.codegenType, final.} = object
|
||||
TNimNode {.codegenType.} = object
|
||||
kind: TNimNodeKind
|
||||
offset: int
|
||||
typ: ptr TNimType
|
||||
|
|
@ -78,7 +78,7 @@ type
|
|||
ntfAcyclic = 1, # type cannot form a cycle
|
||||
ntfEnumHole = 2 # enum has holes and thus `$` for them needs the slow
|
||||
# version
|
||||
TNimType {.codegenType, final.} = object
|
||||
TNimType {.codegenType.} = object
|
||||
size: int
|
||||
kind: TNimKind
|
||||
flags: set[TNimTypeFlag]
|
||||
|
|
|
|||
|
|
@ -264,7 +264,17 @@ proc nimFloatToStr(f: float): string {.compilerproc.} =
|
|||
buf[n] = '.'
|
||||
buf[n+1] = '0'
|
||||
buf[n+2] = '\0'
|
||||
result = $buf
|
||||
# On Windows nice numbers like '1.#INF', '-1.#INF' or '1.#NAN' are produced.
|
||||
# We want to get rid of these here:
|
||||
if buf[n-1] == 'N':
|
||||
result = "nan"
|
||||
elif buf[n-1] == 'F':
|
||||
if buf[0] == '-':
|
||||
result = "-inf"
|
||||
else:
|
||||
result = "inf"
|
||||
else:
|
||||
result = $buf
|
||||
|
||||
proc strtod(buf: cstring, endptr: ptr cstring): float64 {.importc,
|
||||
header: "<stdlib.h>", noSideEffect.}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue