summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorTimothee Cour <timothee.cour2@gmail.com>2021-04-30 09:54:47 -0700
committerGitHub <noreply@github.com>2021-04-30 18:54:47 +0200
commit3192995ac97ad0648b6d1e5a5a1a42d403b37e72 (patch)
treea620eb1ad1c7eac02b5ff6a28f5fdaeac1f9bf20
parent76f93877cdb2a2baf28eed6edda5bcc96f4ef404 (diff)
downloadNim-3192995ac97ad0648b6d1e5a5a1a42d403b37e72.tar.gz
close #16646; `since` now works with bootstrap nim post csources_v1 (#17895)
* revive #16627 now that csources_v1 was merged

* use dedent in rst.nim, refs https://github.com/nim-lang/Nim/pull/17257#discussion_r589025683

* fix test and improve rendering of a rst warning
-rw-r--r--compiler/semtypes.nim4
-rw-r--r--lib/packages/docutils/rst.nim5
-rw-r--r--tests/stdlib/trstgen.nim2
3 files changed, 5 insertions, 6 deletions
diff --git a/compiler/semtypes.nim b/compiler/semtypes.nim
index c921703b0..6a59624cd 100644
--- a/compiler/semtypes.nim
+++ b/compiler/semtypes.nim
@@ -256,8 +256,8 @@ proc semRangeAux(c: PContext, n: PNode, prev: PType): PType =
     else:
       result.n.add semConstExpr(c, range[i])
 
-  if (result.n[0].kind in {nkFloatLit..nkFloat64Lit} and classify(result.n[0].floatVal) == fcNan) or
-      (result.n[1].kind in {nkFloatLit..nkFloat64Lit} and classify(result.n[1].floatVal) == fcNan):
+  if (result.n[0].kind in {nkFloatLit..nkFloat64Lit} and result.n[0].floatVal.isNaN) or
+      (result.n[1].kind in {nkFloatLit..nkFloat64Lit} and result.n[1].floatVal.isNaN):
     localError(c.config, n.info, "NaN is not a valid start or end for a range")
 
   if weakLeValue(result.n[0], result.n[1]) == impNo:
diff --git a/lib/packages/docutils/rst.nim b/lib/packages/docutils/rst.nim
index 6ad466716..223e57bc4 100644
--- a/lib/packages/docutils/rst.nim
+++ b/lib/packages/docutils/rst.nim
@@ -2250,11 +2250,10 @@ proc parseEnumList(p: var RstParser): PRstNode =
         let n = p.line + p.tok[j].line
         let msg = "\n" & """
           not enough indentation on line $2
-              (should be at column $3 if it's a continuation of enum. list),
+            (should be at column $3 if it's a continuation of enum. list),
           or no blank line after line $1 (if it should be the next paragraph),
           or no escaping \ at the beginning of line $1
-              (if lines $1..$2 are a normal paragraph, not enum. list)""".
-          unindent(8)
+            (if lines $1..$2 are a normal paragraph, not enum. list)""".dedent
         let c = p.col + requiredIndent + ColRstOffset
         rstMessage(p, mwRstStyle, msg % [$(n-1), $n, $c],
                    p.tok[j].line, p.tok[j].col)
diff --git a/tests/stdlib/trstgen.nim b/tests/stdlib/trstgen.nim
index 0af6ba566..cbdb23cd6 100644
--- a/tests/stdlib/trstgen.nim
+++ b/tests/stdlib/trstgen.nim
@@ -849,7 +849,7 @@ Test1
     let output8 = input8.toHtml(warnings = warnings8)
     check(warnings8[].len == 1)
     check("input(6, 1) Warning: RST style: \n" &
-          "  not enough indentation on line 6" in warnings8[0])
+          "not enough indentation on line 6" in warnings8[0])
     doAssert output8 == "Paragraph.<ol class=\"upperalpha simple\">" &
         "<li>stringA</li>\n<li>stringB</li>\n</ol>\n<p>C. string1 string2 </p>\n"