It's not amazingly intelligent, but for scopes you can achieve this relatively
easily with a template.
template destroyEntity(n: untyped) =
echo "destroyed: ", n
template n =
{.error: "Attempting to used destroyed '" & astToStr(n) & ".".}
proc doThing(i: int) =
if true:
destroyEntity(i)
echo i
else:
echo i
doThing(100)
Run
- Small improvement discussion: Use `let` to lock variable previ... cmc
- Small improvement discussion: Use `let` to lock variable previ... cmc
- Small improvement discussion: Use `let` to lock variable previ... dxb
- Small improvement discussion: Use `let` to lock variable previ... planetis
- Small improvement discussion: Use `let` to lock variable previ... SolitudeSF
- Small improvement discussion: Use `let` to lock variable previ... cmc
- Small improvement discussion: Use `let` to lock variable previ... dwin
- Small improvement discussion: Use `let` to lock variable previ... federico3
- Small improvement discussion: Use `let` to lock variable previ... cmc
- Small improvement discussion: Use `let` to lock variable previ... exelotl
- Small improvement discussion: Use `let` to lock variable previ... ElegantBeef
- Small improvement discussion: Use `let` to lock variable previ... cmc
- Small improvement discussion: Use `let` to lock variable previ... ElegantBeef
- Small improvement discussion: Use `let` to lock variable previ... geekrelief
- Small improvement discussion: Use `let` to lock variable previ... ElegantBeef
- Small improvement discussion: Use `let` to lock variable previ... geekrelief
- Small improvement discussion: Use `let` to lock variable previ... ElegantBeef
- Small improvement discussion: Use `let` to lock variable previ... geekrelief
- Small improvement discussion: Use `let` to lock variable previ... geekrelief
- Small improvement discussion: Use `let` to lock variable previ... dwin
