less verbose type mismatch messages (#21191)

* less verbose type mismatch messages

* Update compiler/types.nim

* fixes i386

* fixes i386
This commit is contained in:
ringabout 2022-12-29 03:54:15 +08:00 • committed by GitHub
commit 761c5a0830
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
7 changed files with 105 additions and 27 deletions

View file

@ -44,3 +44,4 @@ when defined(windows):
switch("tlsEmulation", "off")
switch("warningAserror", "UnnamedBreak")
switch("legacy", "verboseTypeMismatch")

View file

@ -0,0 +1,23 @@
discard """
cmd: "nim c --hints:off --skipParentCfg $file"
errormsg: "type mismatch"
nimout: '''
tconcisetypemismatch.nim(23, 47) Error: type mismatch
Expression: int(inNanoseconds(t2 - t1)) / 100.5
[1] int(inNanoseconds(t2 - t1)): int
[2] 100.5: float64
Expected one of (first mismatch at position [#]):
[1] proc `/`(x, y: float): float
[1] proc `/`(x, y: float32): float32
[2] proc `/`(x, y: int): float
'''
"""
import std/monotimes
from times import inNanoseconds
let t1 = getMonotime()
let result = 1 + 2
let t2 = getMonotime()
echo "Elapsed: ", (t2 - t1).inNanoseconds.int / 100.5

View file

@ -0,0 +1,21 @@
switch("path", "$lib/../testament/lib")
# so we can `import stdtest/foo` inside tests
# Using $lib/../ instead of $nim/ so you can use a different nim to run tests
# during local testing, e.g. nim --lib:lib.
## prevent common user config settings to interfere with testament expectations
## Indifidual tests can override this if needed to test for these options.
switch("colors", "off")
switch("excessiveStackTrace", "off")
when (NimMajor, NimMinor, NimPatch) >= (1,5,1):
# to make it easier to test against older nim versions, (best effort only)
switch("filenames", "legacyRelProj")
switch("spellSuggest", "0")
# for std/unittest
switch("define", "nimUnittestOutputLevel:PRINT_FAILURES")
switch("define", "nimUnittestColor:off")
hint("Processing", off)