Revise.jl
Revise.jl copied to clipboard
Extra "end" causes an error inside Revise instead of being reported properly
module A
f(α::Real, β::Real, p::Normal{<:Real}) = f(promote(α, β, p.μ, p.σ)...)
end
end
This is a file with an extra end, but it's not being reported as a syntax error:
% julia -e 'using Revise; includet("maybe_crashes_revise2.jl")'
ERROR: expected an error, finished without one
Stacktrace:
[1] includet(mod::Module, file::String)
@ Revise ~/.julia/packages/Revise/3RMhb/src/packagedef.jl:1018
[2] includet(file::String)
@ Revise ~/.julia/packages/Revise/3RMhb/src/packagedef.jl:1023
[3] top-level scope
@ none:1
caused by: expected an error, finished without one
Stacktrace:
[1] error(s::String)
@ Base ./error.jl:33
[2] first_bad_position
@ ~/.julia/packages/Revise/3RMhb/src/parsing.jl:86 [inlined]
[3] parse_source!(mod_exprs_sigs::OrderedCollections.OrderedDict{Module, OrderedCollections.OrderedDict{Revise.RelocatableExpr, Union{Nothing, Vector{Any}}}}, src::String, filename::String, mod::Module; mode::Symbol)
@ Revise ~/.julia/packages/Revise/3RMhb/src/parsing.jl:43
[4] parse_source!(mod_exprs_sigs::OrderedCollections.OrderedDict{Module, OrderedCollections.OrderedDict{Revise.RelocatableExpr, Union{Nothing, Vector{Any}}}}, filename::String, mod::Module; kwargs
::Base.Iterators.Pairs{Symbol, Symbol, Tuple{Symbol}, NamedTuple{(:mode,), Tuple{Symbol}}})
@ Revise ~/.julia/packages/Revise/3RMhb/src/parsing.jl:27
[5] #parse_source#11
@ ~/.julia/packages/Revise/3RMhb/src/parsing.jl:10 [inlined]
[6] track(mod::Module, file::String; mode::Symbol, kwargs::Base.Iterators.Pairs{Symbol, Bool, Tuple{Symbol}, NamedTuple{(:skip_include,), Tuple{Bool}}})
@ Revise ~/.julia/packages/Revise/3RMhb/src/packagedef.jl:901
[7] includet(mod::Module, file::String)
@ Revise ~/.julia/packages/Revise/3RMhb/src/packagedef.jl:1001
[8] includet(file::String)
@ Revise ~/.julia/packages/Revise/3RMhb/src/packagedef.jl:1023
[9] top-level scope
@ none:1
julia> versioninfo()
Julia Version 1.6.3
Commit ae8452a9e0 (2021-09-23 17:34 UTC)
Platform Info:
OS: Linux (x86_64-pc-linux-gnu)
CPU: AMD Ryzen 7 3700X 8-Core Processor
WORD_SIZE: 64
LIBM: libopenlibm
LLVM: libLLVM-11.0.1 (ORCJIT, znver2)
(Revise) pkg> status
Status `~/Sandboxes/github/Revise/Project.toml`
[295af30f] Revise v3.1.20