parent
c5f64f101b
commit
08159733cd
2 changed files with 32 additions and 2 deletions
|
|
@ -660,7 +660,7 @@ template handleNestedTempl(n, processCall: untyped, willProduceStmt = false) =
|
|||
branch[0] = p(it[0], c, s, normal)
|
||||
|
||||
branch[^1] = if it[^1].typ.isEmptyType or willProduceStmt:
|
||||
processScope(c, branchScope, processCall(it[^1], branchScope))
|
||||
processScope(c, branchScope, maybeVoid(it[^1], branchScope))
|
||||
else:
|
||||
processScopeExpr(c, branchScope, it[^1], processCall)
|
||||
result.add branch
|
||||
|
|
@ -679,7 +679,7 @@ template handleNestedTempl(n, processCall: untyped, willProduceStmt = false) =
|
|||
var branchScope = nestedScope(s)
|
||||
branch[^1] = if it[^1].typ.isEmptyType or willProduceStmt or it.kind == nkFinally:
|
||||
processScope(c, branchScope, if it.kind == nkFinally: p(it[^1], c, branchScope, normal)
|
||||
else: processCall(it[^1], branchScope))
|
||||
else: maybeVoid(it[^1], branchScope))
|
||||
else:
|
||||
processScopeExpr(c, branchScope, it[^1], processCall)
|
||||
result.add branch
|
||||
|
|
|
|||
|
|
@ -67,6 +67,9 @@ ho
|
|||
king
|
||||
live long; long live
|
||||
king
|
||||
hi
|
||||
try
|
||||
bye
|
||||
'''
|
||||
"""
|
||||
|
||||
|
|
@ -494,3 +497,30 @@ proc weirdScopes =
|
|||
echo king
|
||||
|
||||
weirdScopes()
|
||||
|
||||
|
||||
# bug #14985
|
||||
proc getScope(): string =
|
||||
if true:
|
||||
return "hi"
|
||||
else:
|
||||
"else"
|
||||
|
||||
echo getScope()
|
||||
|
||||
proc getScope3(): string =
|
||||
try:
|
||||
"try"
|
||||
except:
|
||||
return "except"
|
||||
|
||||
echo getScope3()
|
||||
|
||||
proc getScope2(): string =
|
||||
case true
|
||||
of true:
|
||||
return "bye"
|
||||
else:
|
||||
"else"
|
||||
|
||||
echo getScope2()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue