diff options
author | Araq <rumpf_a@web.de> | 2018-01-14 17:34:48 +0100 |
---|---|---|
committer | Araq <rumpf_a@web.de> | 2018-01-14 17:34:48 +0100 |
commit | bba6d624205fbfe695b146fb63c00a2854199ee8 (patch) | |
tree | 3c744cae46965253f57922346fa6671a70f19657 | |
parent | f71f9f83c2de79d57e89a7b6c3d66225f42c1482 (diff) | |
parent | 6db1b492e12490be976c3aeda3a54eddf59cdc04 (diff) | |
download | Nim-bba6d624205fbfe695b146fb63c00a2854199ee8.tar.gz |
Merge branch 'devel' of github.com:nim-lang/Nim into devel
-rw-r--r-- | doc/tut1.rst | 4 | ||||
-rw-r--r-- | lib/pure/strformat.nim | 1 | ||||
-rw-r--r-- | tests/testament/categories.nim | 11 | ||||
-rw-r--r-- | tests/testament/tester.nim | 11 |
4 files changed, 15 insertions, 12 deletions
diff --git a/doc/tut1.rst b/doc/tut1.rst index 9e6f1ab3c..f935e7935 100644 --- a/doc/tut1.rst +++ b/doc/tut1.rst @@ -41,7 +41,7 @@ Save this code to the file "greetings.nim". Now compile and run it:: nim compile --run greetings.nim -With the ``--run`` `switch <nimc.html#command-line-switches>`_ Nim +With the ``--run`` `switch <nimc.html#compiler-usage-command-line-switches>`_ Nim executes the file automatically after compilation. You can give your program command line arguments by appending them after the filename:: @@ -58,7 +58,7 @@ To compile a release version use:: By default the Nim compiler generates a large amount of runtime checks aiming for your debugging pleasure. With ``-d:release`` these checks are `turned off and optimizations are turned on -<nimc.html#compile-time-symbols>`_. +<nimc.html#compiler-usage-compile-time-symbols>`_. Though it should be pretty obvious what the program does, I will explain the syntax: statements which are not indented are executed when the program diff --git a/lib/pure/strformat.nim b/lib/pure/strformat.nim index c771343c3..62b095cb1 100644 --- a/lib/pure/strformat.nim +++ b/lib/pure/strformat.nim @@ -417,6 +417,7 @@ template fmt*(pattern: string): untyped = ## ## let example = "oh, look no conflicts anymore" ## echo fmt"{example}" + bind `%` %pattern proc mkDigit(v: int, typ: char): string {.inline.} = diff --git a/tests/testament/categories.nim b/tests/testament/categories.nim index 42e19d3dd..06decfa3c 100644 --- a/tests/testament/categories.nim +++ b/tests/testament/categories.nim @@ -17,11 +17,12 @@ const rodfilesDir = "tests/rodfiles" proc delNimCache(filename, options: string) = - let dir = nimcacheDir(filename, options) - try: - removeDir(dir) - except OSError: - echo "[Warning] could not delete: ", dir + for target in low(TTarget)..high(TTarget): + let dir = nimcacheDir(filename, options, target) + try: + removeDir(dir) + except OSError: + echo "[Warning] could not delete: ", dir proc runRodFiles(r: var TResults, cat: Category, options: string) = template test(filename: string, clearCacheFirst=false) = diff --git a/tests/testament/tester.nim b/tests/testament/tester.nim index 870f9f865..918de881f 100644 --- a/tests/testament/tester.nim +++ b/tests/testament/tester.nim @@ -71,13 +71,14 @@ proc getFileDir(filename: string): string = if not result.isAbsolute(): result = getCurrentDir() / result -proc nimcacheDir(filename, options: string): string = +proc nimcacheDir(filename, options: string, target: TTarget): string = ## Give each test a private nimcache dir so they don't clobber each other's. - return "nimcache" / (filename & '_' & options.getMD5) + let hashInput = options & $target + return "nimcache" / (filename & '_' & hashInput.getMD5) proc callCompiler(cmdTemplate, filename, options: string, target: TTarget, extraOptions=""): TSpec = - let nimcache = nimcacheDir(filename, options) + let nimcache = nimcacheDir(filename, options, target) let options = options & " --nimCache:" & nimcache.quoteShell & extraOptions let c = parseCmdLine(cmdTemplate % ["target", targetToCmd[target], "options", options, "file", filename.quoteShell, @@ -231,7 +232,7 @@ proc cmpMsgs(r: var TResults, expected, given: TSpec, test: TTest, target: TTarg proc generatedFile(test: TTest, target: TTarget): string = let (_, name, _) = test.name.splitFile let ext = targetToExt[target] - result = nimcacheDir(test.name, test.options) / + result = nimcacheDir(test.name, test.options, target) / (if target == targetJS: "" else: "compiler_") & name.changeFileExt(ext) @@ -334,7 +335,7 @@ proc testSpec(r: var TResults, test: TTest, target = targetC) = var exeFile: string if isJsTarget: let (_, file, _) = splitFile(tname) - exeFile = nimcacheDir(test.name, test.options) / file & ".js" + exeFile = nimcacheDir(test.name, test.options, target) / file & ".js" else: exeFile = changeFileExt(tname, ExeExt) |