Skip to content

Arbitrary exception inside of a @async is not thrown or wrapped into an tink.core.Error #43

@nodiex-cloud

Description

@nodiex-cloud

If there is null pointer exception in:

@async function myFunc() {
    var v:Dynamic=null;
    v.helloWorld();
}
try {
    @await myFunc();
} catch(e:Dynamic) {
    trace(e);
}

Nothing is caught or thrown by @await myFunc(). This is contrary to my understanding of the following from the documentation:
Any exception results in a Failure, which will pass through all methods until caught

In addition, haxe complains with Catch class parameter must be Dynamic, if you do catch(e:tink.core.Error). It isn't clear if this would help in catching some, I doubt it. It seems like something is eating the exception. Manually executing the myFunc() with myFunc().handle doesn't see any exceptions either.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions