-
-
Notifications
You must be signed in to change notification settings - Fork 5.6k
Closed
Closed
Copy link
Labels
bisect wantederror messagesBetter, more actionable error messagesBetter, more actionable error messagesregressionRegression in behavior compared to a previous versionRegression in behavior compared to a previous version
Description
It seems a lot of the niceness that has been added for "stackoverflow type" of errors (or just generally when a function is called recursively) has been lost:
As an example:
julia> f(x) = g(x)
f (generic function with 1 method)
julia> g(x) = f(x)
g (generic function with 1 method)
1.7:
julia> f(10)
ERROR: StackOverflowError:
Stacktrace:
[1] f(x::Int64)
@ Main ./REPL[1]:1
[2] g(x::Int64)
@ Main ./REPL[2]:1
--- the last 2 lines are repeated 39990 more times ---
[79983] f(x::Int64)
@ Main ./REPL[1]:1
1.8+:
julia> f(10)
ERROR: StackOverflowError:
Stacktrace:
[1] g(x::Int64)
@ Main ./REPL[2]:1
[2] f(x::Int64)
@ Main ./REPL[1]:1
The
--- the last 2 lines are repeated 39990 more times ---
[79983] f(x::Int64)
part is lost.
Another example:
julia> f(x) = f(x)
f (generic function with 1 method)
1.7:
julia> f(1)
ERROR: StackOverflowError:
Stacktrace:
[1] f(x::Int64) (repeats 79984 times)
@ Main ./REPL[1]:1
1.8:
julia> f(1)
ERROR: StackOverflowError:
Stacktrace:
[1] f(x::Int64) (repeats 2 times)
@ Main ./REPL[4]:1
1.8 says repeats 2 times
which seems wrong..
LilithHafner
Metadata
Metadata
Assignees
Labels
bisect wantederror messagesBetter, more actionable error messagesBetter, more actionable error messagesregressionRegression in behavior compared to a previous versionRegression in behavior compared to a previous version