mirror of
https://github.com/nim-lang/Nim.git
synced 2026-02-16 08:04:20 +00:00
@@ -251,7 +251,7 @@ proc gen(c: PCtx; n: PNode; dest: var TDest; flags: TGenFlags = {})
|
||||
proc gen(c: PCtx; n: PNode; dest: TRegister; flags: TGenFlags = {}) =
|
||||
var d: TDest = dest
|
||||
gen(c, n, d, flags)
|
||||
internalAssert d == dest
|
||||
#internalAssert d == dest # issue #7407
|
||||
|
||||
proc gen(c: PCtx; n: PNode; flags: TGenFlags = {}) =
|
||||
var tmp: TDest = -1
|
||||
@@ -1829,7 +1829,6 @@ proc gen(c: PCtx; n: PNode; dest: var TDest; flags: TGenFlags = {}) =
|
||||
unused(n, dest)
|
||||
genReturn(c, n)
|
||||
of nkRaiseStmt:
|
||||
unused(n, dest)
|
||||
genRaise(c, n)
|
||||
of nkBreakStmt:
|
||||
unused(n, dest)
|
||||
|
||||
@@ -45,15 +45,24 @@ let a = case str1:
|
||||
echo "no good"
|
||||
quit("quiting")
|
||||
|
||||
let b = case str2:
|
||||
of nil, "": raise newException(ValueError, "Invalid boolean")
|
||||
elif str2[0] == 'Y': true
|
||||
elif str2[0] == 'N': false
|
||||
else: "error".quit(2)
|
||||
proc toBool(s: string): bool =
|
||||
case s:
|
||||
of nil, "": raise newException(ValueError, "Invalid boolean")
|
||||
elif s[0] == 'Y': true
|
||||
elif s[0] == 'N': false
|
||||
else: "error".quit(2)
|
||||
|
||||
|
||||
let b = "NN".toBool()
|
||||
|
||||
doAssert(a == true)
|
||||
doAssert(b == false)
|
||||
|
||||
static:
|
||||
#bug #7407
|
||||
let bstatic = "N".toBool()
|
||||
doAssert(bstatic == false)
|
||||
|
||||
var bb: bool
|
||||
doassert(not compiles(
|
||||
bb = case str2:
|
||||
|
||||
Reference in New Issue
Block a user