mirror of
https://github.com/storytold/vectorcraft.git
synced 2026-11-11 20:01:43 +00:00
A failure $.evalFile raised for a file it could not run was placed by matching the uncaught error's message against the last such failure. A script that caught the failure and threw it again later, or threw a new error whose message held its text, was reported at the failed file's line instead of the second throw. The failure now carries a mark (HostError::Marked) with the exception. A catch clause drops the mark, a throw raises the value without one, and a finally block that ends normally throws it on with its mark, nested finally blocks included. Realm::error_mark gives the mark of the error a run ended with, and the engine looks up the file, line and column by it.