closes #14216; add testcase (#20733)

This commit is contained in:
ringabout
2022-11-02 15:29:46 +08:00
committed by GitHub
parent 841d9d5975
commit 87f7f50553

View File

@@ -0,0 +1,39 @@
discard """
output: '''
printing from adder
'''
"""
import std/sugar
block:
proc makeAdder(a: int): (int) -> void =
proc discard_adder(x: int) {.closure.} =
discard a + x
proc echo_adder(x: int) {.closure.} =
echo("printing from adder")
if a > 0:
discard_adder
else:
echo_adder
let newAdder = makeAdder(0)
newAdder(5)
block:
proc makeAdder(a: int): (int) -> void =
proc discard_adder(x: int) {.closure.} =
discard a + x
proc echo_adder(x: int) {.closure.} =
echo("printing from adder")
if a > 0:
echo_adder
else:
discard_adder
let newAdder = makeAdder(0)
newAdder(5)