Skip to content

scoping not handled correctly in the presence of exceptions #209

@lutzhamel

Description

@lutzhamel

Scoping not handled correctly in the presence of exceptions. Consider the following program,

load system io.

function goo with none do
   throw Error("exception").
end

function foo with none do
   let a = 1.
   try
      goo().
   catch _ do
      io @println "exception caught".
   end
   assert(a==1).  -- a no longer in scope
end

foo ().

The nested function goo throws an exception. When the exception is caught scoping no longer works correctly - a is no longer in scope.

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions