Skip to content

[question] function signature changed, revise here or upto downstream? #152

Description

@daviehh

With the v3.6.0 update in
#117

one function add_active_gotos! has changed the number of arguments it accepts - with the result that downstream that uses LoweredCodeUtils now may break: a common setup is to have both Revise.jl and JET.jl, both of them uses LoweredCodeUtils but with default/no [compat] section, it would update LoweredCodeUtils to 3.6.0, and break JET.jl
aviatesk/JET.jl#823

Is it better/more up to downstream to pin a version/change code, or is it better to add a default argument so the old 4-arg call without specifying controller still works?

function add_active_gotos!(isrequired, src::CodeInfo, cfg::CFG, postdomtree, controller::SelectiveEvalController)

change to something like:

add_active_gotos!(isrequired, src::CodeInfo, cfg::CFG, postdomtree, controller::SelectiveEvalController=SelectiveEvalController())

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