Closed wbhart closed 4 years ago
I can also reproduce this on macOS. (BTW note that these actually don't seem to be crashes, Julia keeps running). Here is another error I am seeing; note that both errors are inside Polymake tests:
Internal error: encountered unexpected error in runtime:
MethodError(f=typeof(Base.string)(), args=(Expr(:<:, :t, :r),), world=0x0000000000000f21)
unknown function (ip: 0x7f65fc8c6696)
unknown function (ip: 0x7f65fc8cd166)
unknown function (ip: 0x7f65fc8cd912)
jl_apply_generic at /usr/bin/../lib/libjulia.so.1 (unknown line)
unknown function (ip: 0x7f65ef964aa0)
unknown function (ip: 0x7f65ef964b11)
unknown function (ip: 0x7f65ef8619e2)
unknown function (ip: 0x7f65ef862b0f)
unknown function (ip: 0x7f65ef86ccc4)
unknown function (ip: 0x7f65ef86f6bc)
unknown function (ip: 0x7f65ef86f862)
unknown function (ip: 0x7f65ef870b54)
unknown function (ip: 0x7f65ef873c4b)
unknown function (ip: 0x7f65ef8794f1)
unknown function (ip: 0x7f65ef8e68ac)
unknown function (ip: 0x7f65ef860d72)
unknown function (ip: 0x7f65ef861b65)
unknown function (ip: 0x7f65ef862b0f)
unknown function (ip: 0x7f65ef86ccc4)
unknown function (ip: 0x7f65ef86f6bc)
unknown function (ip: 0x7f65ef86f862)
unknown function (ip: 0x7f65ef870b54)
unknown function (ip: 0x7f65ef877075)
unknown function (ip: 0x7f65ef8795a3)
unknown function (ip: 0x7f65ef8e68ac)
unknown function (ip: 0x7f65ef860d72)
unknown function (ip: 0x7f65ef861b65)
unknown function (ip: 0x7f65ef862b0f)
unknown function (ip: 0x7f65ef86ccc4)
unknown function (ip: 0x7f65ef86f6bc)
unknown function (ip: 0x7f65ef86f862)
unknown function (ip: 0x7f65ef870b54)
unknown function (ip: 0x7f65ef873c4b)
unknown function (ip: 0x7f65ef8794f1)
unknown function (ip: 0x7f65ef8e68ac)
unknown function (ip: 0x7f65ef860d72)
unknown function (ip: 0x7f65ef861b65)
unknown function (ip: 0x7f65ef862b0f)
unknown function (ip: 0x7f65ef86ccc4)
unknown function (ip: 0x7f65ef86f6bc)
unknown function (ip: 0x7f65ef86f862)
unknown function (ip: 0x7f65ef870b54)
unknown function (ip: 0x7f65ef873c4b)
unknown function (ip: 0x7f65ef8794f1)
unknown function (ip: 0x7f65ef8e68ac)
unknown function (ip: 0x7f65ef860d72)
unknown function (ip: 0x7f65ef861b65)
unknown function (ip: 0x7f65ef862b0f)
unknown function (ip: 0x7f65ef86ccc4)
unknown function (ip: 0x7f65ef86f6bc)
unknown function (ip: 0x7f65ef86f862)
unknown function (ip: 0x7f65ef870b54)
unknown function (ip: 0x7f65ef873c4b)
unknown function (ip: 0x7f65ef8794f1)
unknown function (ip: 0x7f65ef8e68ac)
unknown function (ip: 0x7f65ef860d72)
unknown function (ip: 0x7f65ef861b65)
unknown function (ip: 0x7f65ef862b0f)
unknown function (ip: 0x7f65ef86ccc4)
unknown function (ip: 0x7f65ef86f6bc)
unknown function (ip: 0x7f65ef86f862)
unknown function (ip: 0x7f65ef870b54)
unknown function (ip: 0x7f65ef877075)
unknown function (ip: 0x7f65ef8794f1)
unknown function (ip: 0x7f65ef8e68ac)
unknown function (ip: 0x7f65ef860d72)
unknown function (ip: 0x7f65ef861b65)
unknown function (ip: 0x7f65ef862b0f)
unknown function (ip: 0x7f65ef86ccc4)
unknown function (ip: 0x7f65ef86f6bc)
unknown function (ip: 0x7f65ef86f862)
unknown function (ip: 0x7f65ef870b54)
unknown function (ip: 0x7f65ef873c4b)
unknown function (ip: 0x7f65ef8794f1)
unknown function (ip: 0x7f65ef8e68ac)
unknown function (ip: 0x7f65ef860d72)
unknown function (ip: 0x7f65ef861b65)
unknown function (ip: 0x7f65ef862b0f)
unknown function (ip: 0x7f65ef86ccc4)
unknown function (ip: 0x7f65ef86f6bc)
unknown function (ip: 0x7f65ef86f862)
unknown function (ip: 0x7f65ef870b54)
unknown function (ip: 0x7f65ef873c4b)
unknown function (ip: 0x7f65ef8795a3)
unknown function (ip: 0x7f65ef8e68ac)
unknown function (ip: 0x7f65ef860d72)
unknown function (ip: 0x7f65ef861b65)
unknown function (ip: 0x7f65ef862b0f)
unknown function (ip: 0x7f65ef86ccc4)
unknown function (ip: 0x7f65ef86f6bc)
unknown function (ip: 0x7f65ef86f862)
unknown function (ip: 0x7f65ef870b54)
unknown function (ip: 0x7f65ef873c4b)
unknown function (ip: 0x7f65ef8794f1)
unknown function (ip: 0x7f65ef8e68ac)
unknown function (ip: 0x7f65ef860d72)
unknown function (ip: 0x7f65ef861b65)
unknown function (ip: 0x7f65ef862b0f)
unknown function (ip: 0x7f65ef86ccc4)
unknown function (ip: 0x7f65ef86f6bc)
unknown function (ip: 0x7f65ef86f862)
unknown function (ip: 0x7f65ef870b54)
unknown function (ip: 0x7f65ef873c4b)
unknown function (ip: 0x7f65ef8794f1)
unknown function (ip: 0x7f65ef8e68ac)
unknown function (ip: 0x7f65ef860d72)
unknown function (ip: 0x7f65ef861b65)
unknown function (ip: 0x7f65ef862b0f)
unknown function (ip: 0x7f65ef86ccc4)
unknown function (ip: 0x7f65ef86f6bc)
unknown function (ip: 0x7f65ef86f862)
unknown function (ip: 0x7f65ef870b54)
unknown function (ip: 0x7f65ef873c4b)
unknown function (ip: 0x7f65ef8794f1)
unknown function (ip: 0x7f65ef8e68ac)
unknown function (ip: 0x7f65ef860d72)
unknown function (ip: 0x7f65ef861b65)
unknown function (ip: 0x7f65ef862b0f)
unknown function (ip: 0x7f65ef86ccc4)
unknown function (ip: 0x7f65ef86f6bc)
unknown function (ip: 0x7f65ef86f862)
unknown function (ip: 0x7f65ef870b54)
unknown function (ip: 0x7f65ef873c4b)
unknown function (ip: 0x7f65ef8794f1)
unknown function (ip: 0x7f65ef8e68ac)
unknown function (ip: 0x7f65ef860d72)
unknown function (ip: 0x7f65ef861b65)
unknown function (ip: 0x7f65ef862b0f)
unknown function (ip: 0x7f65ef86ccc4)
unknown function (ip: 0x7f65ef86f6bc)
unknown function (ip: 0x7f65ef86f862)
unknown function (ip: 0x7f65ef870b54)
unknown function (ip: 0x7f65ef877075)
unknown function (ip: 0x7f65ef8794f1)
unknown function (ip: 0x7f65ef8e68ac)
unknown function (ip: 0x7f65ef860d72)
unknown function (ip: 0x7f65ef861b65)
unknown function (ip: 0x7f65ef862b0f)
unknown function (ip: 0x7f65ef86ccc4)
unknown function (ip: 0x7f65ef86f6bc)
unknown function (ip: 0x7f65ef86f862)
unknown function (ip: 0x7f65ef870b54)
unknown function (ip: 0x7f65ef877075)
unknown function (ip: 0x7f65ef8794f1)
unknown function (ip: 0x7f65ef8e68ac)
unknown function (ip: 0x7f65ef860d72)
unknown function (ip: 0x7f65ef861b65)
unknown function (ip: 0x7f65ef862b0f)
unknown function (ip: 0x7f65ef86ccc4)
unknown function (ip: 0x7f65ef86f6bc)
unknown function (ip: 0x7f65ef86f862)
unknown function (ip: 0x7f65ef870b54)
unknown function (ip: 0x7f65ef877075)
unknown function (ip: 0x7f65ef8794f1)
unknown function (ip: 0x7f65ef8e68ac)
unknown function (ip: 0x7f65ef860d72)
unknown function (ip: 0x7f65ef861b65)
unknown function (ip: 0x7f65ef862b0f)
unknown function (ip: 0x7f65ef86ccc4)
unknown function (ip: 0x7f65ef86f6bc)
unknown function (ip: 0x7f65ef86f862)
unknown function (ip: 0x7f65ef870b54)
unknown function (ip: 0x7f65ef877075)
unknown function (ip: 0x7f65ef8794f1)
unknown function (ip: 0x7f65ef8e68ac)
unknown function (ip: 0x7f65ef860d72)
unknown function (ip: 0x7f65ef861b65)
unknown function (ip: 0x7f65ef862b0f)
unknown function (ip: 0x7f65ef86ccc4)
unknown function (ip: 0x7f65ef86f6bc)
unknown function (ip: 0x7f65ef86f862)
unknown function (ip: 0x7f65ef870b54)
unknown function (ip: 0x7f65ef873c4b)
unknown function (ip: 0x7f65ef8794f1)
unknown function (ip: 0x7f65ef8e68ac)
unknown function (ip: 0x7f65ef860d72)
unknown function (ip: 0x7f65ef861b65)
unknown function (ip: 0x7f65ef862b0f)
unknown function (ip: 0x7f65ef86ccc4)
unknown function (ip: 0x7f65ef86f6bc)
unknown function (ip: 0x7f65ef86f862)
unknown function (ip: 0x7f65ef870b54)
unknown function (ip: 0x7f65ef873c4b)
unknown function (ip: 0x7f65ef8794f1)
unknown function (ip: 0x7f65ef8e68ac)
unknown function (ip: 0x7f65ef860d72)
unknown function (ip: 0x7f65ef861b65)
unknown function (ip: 0x7f65ef862b0f)
unknown function (ip: 0x7f65ef86ccc4)
unknown function (ip: 0x7f65ef86f6bc)
unknown function (ip: 0x7f65ef86f862)
unknown function (ip: 0x7f65ef870b54)
unknown function (ip: 0x7f65ef873c4b)
unknown function (ip: 0x7f65ef8794f1)
unknown function (ip: 0x7f65ef8e68ac)
unknown function (ip: 0x7f65ef860d72)
unknown function (ip: 0x7f65ef861b65)
unknown function (ip: 0x7f65ef862b0f)
unknown function (ip: 0x7f65ef86ccc4)
unknown function (ip: 0x7f65ef86f6bc)
unknown function (ip: 0x7f65ef86f862)
unknown function (ip: 0x7f65ef870b54)
unknown function (ip: 0x7f65ef877075)
unknown function (ip: 0x7f65ef8794f1)
unknown function (ip: 0x7f65ef8e68ac)
unknown function (ip: 0x7f65ef860d72)
unknown function (ip: 0x7f65ef861b65)
unknown function (ip: 0x7f65ef862b0f)
unknown function (ip: 0x7f65ef86ccc4)
unknown function (ip: 0x7f65ef86f6bc)
unknown function (ip: 0x7f65ef86f862)
unknown function (ip: 0x7f65ef870b54)
unknown function (ip: 0x7f65ef873c4b)
unknown function (ip: 0x7f65ef8794f1)
unknown function (ip: 0x7f65ef8e68ac)
unknown function (ip: 0x7f65ef8e7afc)
unknown function (ip: 0x7f65ef8e83e4)
unknown function (ip: 0x7f65ef8e858f)
unknown function (ip: 0x7f65fc8cebf5)
unknown function (ip: 0x7f65fc8cf5a4)
jl_apply_generic at /usr/bin/../lib/libjulia.so.1 (unknown line)
unknown function (ip: 0x7f65fc8e4855)
unknown function (ip: 0x7f65fc8e44fa)
unknown function (ip: 0x7f65fc8e609a)
unknown function (ip: 0x7f65fc8e6057)
unknown function (ip: 0x7f65fc8e6057)
unknown function (ip: 0x7f65fc8e6832)
macro expansion at /home/mhorn/Projekte/OSCAR/Oscar.jl/test/Polymake/nmbthy-test.jl:16 [inlined]
macro expansion at /build/julia/src/julia-1.4.1/usr/share/julia/stdlib/v1.4/Test/src/Test.jl:1113 [inlined]
top-level scope at /home/mhorn/Projekte/OSCAR/Oscar.jl/test/Polymake/nmbthy-test.jl:13
unknown function (ip: 0x7f65fc904371)
unknown function (ip: 0x7f65fc8d8d9e)
jl_load at /usr/bin/../lib/libjulia.so.1 (unknown line)
unknown function (ip: 0x7f65efb8ba0f)
unknown function (ip: 0x7f65fc8e4855)
unknown function (ip: 0x7f65fc8e44fa)
unknown function (ip: 0x7f65fc8e5d84)
unknown function (ip: 0x7f65fc8e6832)
top-level scope at none:7
unknown function (ip: 0x7f65fc904371)
unknown function (ip: 0x7f65fc8d8d9e)
jl_load at /usr/bin/../lib/libjulia.so.1 (unknown line)
unknown function (ip: 0x7f65efb8ba0f)
unknown function (ip: 0x7f65fc8e4855)
unknown function (ip: 0x7f65fc8e44fa)
unknown function (ip: 0x7f65fc8e5d84)
unknown function (ip: 0x7f65fc8e6832)
top-level scope at none:6
unknown function (ip: 0x7f65fc904371)
unknown function (ip: 0x7f65fc904a08)
jl_toplevel_eval_in at /usr/bin/../lib/libjulia.so.1 (unknown line)
unknown function (ip: 0x7f65ef944e04)
unknown function (ip: 0x7f65ef943325)
unknown function (ip: 0x7f65ef9447e2)
unknown function (ip: 0x7f65ef944925)
unknown function (ip: 0x559476a634fe)
unknown function (ip: 0x559476a630a7)
__libc_start_main at /usr/bin/../lib/libc.so.6 (unknown line)
unknown function (ip: 0x559476a6315d)
I thought that it might be related to https://github.com/oscar-system/Polymake.jl/pull/293 but in a quick test, switching to Polymake.jl master doesn't seem to help (but I might have screwed up)
I don't think this is related to the Polymake Integer issue, but more some type inference bug in julia, maybe similar to https://github.com/JuliaLang/julia/issues/23786. Maybe stemming from Hecke or Nemo types?
It can be triggered in the REPL with the following. And it triggers before any actual code is run, a @show
in the first line of norm_equation_fac_elem
will print after the error.
julia> using Oscar
----- ----- ----- - -----
| | | | | | | | | |
| | | | | | | |
| | ----- | | | |-----
| | | | |-----| | |
| | | | | | | | | |
----- ----- ----- - - - -
...combining (and extending) ANTIC, GAP, Polymake and Singular
Version 0.3.0-dev ...
... which comes with absolutely no warranty whatsoever
Type: '?Oscar' for more information
(c) 2019-2020 by The Oscar Development Team
julia> k, a = wildanger_field(3, 13)
(Number field over Rational Field with defining polynomial x^3-13*x^2+13*x-13, _$)
julia> zk = maximal_order(k)
Maximal order of Number field over Rational Field with defining polynomial x^3-13*x^2+13*x-13
with basis nf_elem[1, _$, 1//2*_$^2 + 1//2]
julia> na = norm(rand(zk, 1:10))
17991
julia> s = norm_equation(zk, na)
Internal error: encountered unexpected error in runtime:
MethodError(f=typeof(Base.string)(), args=(Expr(:<:, :t, :r),), world=0x0000000000000f21)
jl_method_error_bare at /var/tmp/portage/dev-lang/julia-1.4.2/work/julia-1.4.2/src/gf.c:1719
jl_method_error at /var/tmp/portage/dev-lang/julia-1.4.2/work/julia-1.4.2/src/gf.c:1737
...
jl_toplevel_eval_in at /var/tmp/portage/dev-lang/julia-1.4.2/work/julia-1.4.2/src/toplevel.c:848
eval at ./boot.jl:331
eval_user_input at /var/tmp/portage/dev-lang/julia-1.4.2/work/julia-1.4.2/usr/share/julia/stdlib/v1.4/REPL/src/REPL.jl:86
macro expansion at /var/tmp/portage/dev-lang/julia-1.4.2/work/julia-1.4.2/usr/share/julia/stdlib/v1.4/REPL/src/REPL.jl:118 [inlined]
#26 at ./task.jl:358
jl_apply at /var/tmp/portage/dev-lang/julia-1.4.2/work/julia-1.4.2/src/julia.h:1700 [inlined]
start_task at /var/tmp/portage/dev-lang/julia-1.4.2/work/julia-1.4.2/src/task.c:687
unknown function (ip: (nil))
1-element Array{NfAbsOrdElem{AnticNumberField,nf_elem},1}:
_$^2 + 6*_$ + 4
Same error happens for this:
julia> norm_equation_fac_elem(zk,fmpz(na))
Internal error: encountered unexpected error in runtime:
MethodError(f=typeof(Base.string)(), args=(Expr(:<:, :t, :r),), world=0x0000000000000f21)
jl_method_error_bare at /var/tmp/portage/dev-lang/julia-1.4.2/work/julia-1.4.2/src/gf.c:1719
...
Interestingly it does not appear if the optional Bool is specified explicitly:
julia> norm_equation_fac_elem(zk,fmpz(na),abs=false)
1-element Array{FacElem{nf_elem,AnticNumberField},1}:
Factored element with data
Dict{nf_elem,fmpz}(-41//5997*_$^2 + 554//5997*_$ - 256//1999 => -1,-1 => 1)
Also julia @code_warntype
fails with an AssertionError. julia seems to be very deep in the type inference and then fail because some type is too complex? (the assertion is here: https://github.com/JuliaLang/julia/blob/master/base/compiler/typelimits.jl#L23)
julia> @code_warntype norm_equation_fac_elem(zk,fmpz(na))
ERROR: AssertionError: t <: r
Stacktrace:
[1] limit_type_size(::Any, ::Any, ::Any, ::Int64, ::Int64) at ./compiler/typelimits.jl:23
[2] abstract_call_method(::Method, ::Any, ::Core.SimpleVector, ::Bool, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:359
[3] abstract_call_gf_by_type(::Any, ::Array{Any,1}, ::Any, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:101
[4] abstract_call_known(::Any, ::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:873
[5] abstract_call(::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:895
[6] abstract_call(::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:880
[7] abstract_eval(::Any, ::Array{Any,1}, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:974
[8] typeinf_local(::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:1227
[9] typeinf_nocycle(::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:1283
[10] typeinf(::Core.Compiler.InferenceState) at ./compiler/typeinfer.jl:12
[11] typeinf_edge(::Method, ::Any, ::Core.SimpleVector, ::Core.Compiler.InferenceState) at ./compiler/typeinfer.jl:488
[12] abstract_call_method(::Method, ::Any, ::Core.SimpleVector, ::Bool, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:404
[13] abstract_call_gf_by_type(::Any, ::Array{Any,1}, ::Any, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:101
[14] abstract_call_known(::Any, ::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:873
[15] abstract_call(::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:895
[16] abstract_call(::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:880
[17] abstract_eval(::Any, ::Array{Any,1}, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:974
[18] typeinf_local(::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:1213
[19] typeinf_nocycle(::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:1295
[20] typeinf(::Core.Compiler.InferenceState) at ./compiler/typeinfer.jl:12
[21] typeinf_edge(::Method, ::Any, ::Core.SimpleVector, ::Core.Compiler.InferenceState) at ./compiler/typeinfer.jl:488
[22] abstract_call_method(::Method, ::Any, ::Core.SimpleVector, ::Bool, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:404
[23] abstract_call_gf_by_type(::Any, ::Array{Any,1}, ::Any, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:101
[24] abstract_call_known(::Any, ::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:873
[25] abstract_call(::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:895
[26] abstract_call(::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:880
[27] abstract_eval(::Any, ::Array{Any,1}, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:974
[28] typeinf_local(::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:1227
[29] typeinf_nocycle(::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:1283
... (the last 10 lines are repeated 2 more times)
[50] typeinf(::Core.Compiler.InferenceState) at ./compiler/typeinfer.jl:12
[51] typeinf_edge(::Method, ::Any, ::Core.SimpleVector, ::Core.Compiler.InferenceState) at ./compiler/typeinfer.jl:488
[52] abstract_call_method(::Method, ::Any, ::Core.SimpleVector, ::Bool, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:404
[53] abstract_call_gf_by_type(::Any, ::Array{Any,1}, ::Any, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:101
[54] abstract_call_known(::Any, ::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:873
[55] abstract_call(::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:895
[56] abstract_call(::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:880
[57] abstract_eval(::Any, ::Array{Any,1}, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:974
[58] typeinf_local(::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:1213
[59] typeinf_nocycle(::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:1283
[60] typeinf(::Core.Compiler.InferenceState) at ./compiler/typeinfer.jl:12
[61] typeinf_edge(::Method, ::Any, ::Core.SimpleVector, ::Core.Compiler.InferenceState) at ./compiler/typeinfer.jl:488
[62] abstract_call_method(::Method, ::Any, ::Core.SimpleVector, ::Bool, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:404
[63] abstract_call_gf_by_type(::Any, ::Array{Any,1}, ::Any, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:101
[64] abstract_call_known(::Any, ::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:873
[65] abstract_call(::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:895
[66] abstract_call(::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:880
[67] abstract_eval(::Any, ::Array{Any,1}, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:974
[68] typeinf_local(::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:1227
... (the last 10 lines are repeated 1 more time)
[79] typeinf_nocycle(::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:1295
[80] typeinf(::Core.Compiler.InferenceState) at ./compiler/typeinfer.jl:12
[81] typeinf_edge(::Method, ::Any, ::Core.SimpleVector, ::Core.Compiler.InferenceState) at ./compiler/typeinfer.jl:488
[82] abstract_call_method(::Method, ::Any, ::Core.SimpleVector, ::Bool, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:404
[83] abstract_call_gf_by_type(::Any, ::Array{Any,1}, ::Any, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:101
[84] abstract_call_known(::Any, ::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:873
[85] abstract_call(::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:895
[86] abstract_call(::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:880
[87] abstract_eval(::Any, ::Array{Any,1}, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:974
[88] typeinf_local(::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:1227
[89] typeinf_nocycle(::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:1283
... (the last 10 lines are repeated 3 more times)
[120] typeinf(::Core.Compiler.InferenceState) at ./compiler/typeinfer.jl:12
[121] typeinf_edge(::Method, ::Any, ::Core.SimpleVector, ::Core.Compiler.InferenceState) at ./compiler/typeinfer.jl:488
[122] abstract_call_method(::Method, ::Any, ::Core.SimpleVector, ::Bool, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:404
[123] abstract_call_gf_by_type(::Any, ::Array{Any,1}, ::Any, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:101
[124] abstract_call_known(::Any, ::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:873
[125] abstract_call(::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:895
[126] abstract_call(::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:880
[127] abstract_eval(::Any, ::Array{Any,1}, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:974
[128] typeinf_local(::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:1213
[129] typeinf_nocycle(::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:1283
... (the last 10 lines are repeated 3 more times)
[160] typeinf(::Core.Compiler.InferenceState) at ./compiler/typeinfer.jl:12
[161] typeinf_edge(::Method, ::Any, ::Core.SimpleVector, ::Core.Compiler.InferenceState) at ./compiler/typeinfer.jl:488
[162] abstract_call_method(::Method, ::Any, ::Core.SimpleVector, ::Bool, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:404
[163] abstract_call_gf_by_type(::Any, ::Array{Any,1}, ::Any, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:101
[164] abstract_call_known(::Any, ::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:873
[165] abstract_call(::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:895
[166] abstract_call(::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:880
[167] abstract_eval(::Any, ::Array{Any,1}, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:974
[168] typeinf_local(::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:1227
[169] typeinf_nocycle(::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:1283
... (the last 10 lines are repeated 2 more times)
[190] typeinf(::Core.Compiler.InferenceState) at ./compiler/typeinfer.jl:12
[191] typeinf_code(::Method, ::Any, ::Core.SimpleVector, ::Bool, ::Core.Compiler.Params) at ./compiler/typeinfer.jl:515
[192] code_typed(::Any, ::Any; optimize::Bool, debuginfo::Symbol, world::UInt64, params::Core.Compiler.Params) at ./reflection.jl:1107
[193] code_warntype(::Base.TTY, ::Any, ::Any; debuginfo::Symbol, optimize::Bool) at /var/tmp/portage/dev-lang/julia-1.4.2/work/julia-1.4.2/usr/share/julia/stdlib/v1.4/InteractiveUtils/src/codeview.jl:37
[194] code_warntype(::Base.TTY, ::Any, ::Any) at /var/tmp/portage/dev-lang/julia-1.4.2/work/julia-1.4.2/usr/share/julia/stdlib/v1.4/InteractiveUtils/src/codeview.jl:35
[195] code_warntype(::Any, ::Any; kwargs::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}}) at /var/tmp/portage/dev-lang/julia-1.4.2/work/julia-1.4.2/usr/share/julia/stdlib/v1.4/InteractiveUtils/src/codeview.jl:61
[196] code_warntype(::Any, ::Any) at /var/tmp/portage/dev-lang/julia-1.4.2/work/julia-1.4.2/usr/share/julia/stdlib/v1.4/InteractiveUtils/src/codeview.jl:61
Thanks Benjamin. I guess we ought to report this to the Julia devs then, and simultaneously see if we can find a workaround
Adding ,abs=false
might help for the tests. But this warning does not fail the tests anyway.
The other error seems to come from GAP.
On Fri, Jun 19, 2020 at 04:09:00AM -0700, Benjamin Lorenz wrote:
I don't think this is related to the Polymake Integer issue, but more some type inference bug in julia, maybe similar to https://github.com/JuliaLang/julia/issues/23786. Maybe stemming from Hecke or Nemo types?
It can be triggered in the REPL with the following. And it triggers before any actual code is run, a
@show
in the first line ofnorm_equation_fac_elem
will print after the error.it's the mixture.
Hecke "alone" is fine: In Oscar Hecke.build() is fine Oscar.build() the errors.
Indeed, some type seems to be too complex.
julia> using Oscar
----- ----- -----
...combining (and extending) ANTIC, GAP, Polymake and Singular Version 0.3.0-dev ... ... which comes with absolutely no warranty whatsoever Type: '?Oscar' for more information (c) 2019-2020 by The Oscar Development Team
julia> k, a = wildangerfield(3, 13) (Number field over Rational Field with defining polynomial x^3-13x^2+13x-13, $)
julia> zk = maximal_order(k) Maximal order of Number field over Rational Field with defining polynomial x^3-13x^2+13x-13 with basis nfelem[1, $, 1//2*_$^2 + 1//2]
julia> na = norm(rand(zk, 1:10)) 17991
julia> s = norm_equation(zk, na) Internal error: encountered unexpected error in runtime: MethodError(f=typeof(Base.string)(), args=(Expr(:<:, :t, :r),), world=0x0000000000000f21) jl_method_error_bare at /var/tmp/portage/dev-lang/julia-1.4.2/work/julia-1.4.2/src/gf.c:1719 jl_method_error at /var/tmp/portage/dev-lang/julia-1.4.2/work/julia-1.4.2/src/gf.c:1737 ... jl_toplevel_eval_in at /var/tmp/portage/dev-lang/julia-1.4.2/work/julia-1.4.2/src/toplevel.c:848 eval at ./boot.jl:331 eval_user_input at /var/tmp/portage/dev-lang/julia-1.4.2/work/julia-1.4.2/usr/share/julia/stdlib/v1.4/REPL/src/REPL.jl:86 macro expansion at /var/tmp/portage/dev-lang/julia-1.4.2/work/julia-1.4.2/usr/share/julia/stdlib/v1.4/REPL/src/REPL.jl:118 [inlined]
26 at ./task.jl:358
jl_apply at /var/tmp/portage/dev-lang/julia-1.4.2/work/julia-1.4.2/src/julia.h:1700 [inlined] start_task at /var/tmp/portage/dev-lang/julia-1.4.2/work/julia-1.4.2/src/task.c:687 unknown function (ip: (nil))
1-element Array{NfAbsOrdElem{AnticNumberField,nfelem},1}: $^2 + 6*_$ + 4
Same error happens for this:
julia> norm_equation_fac_elem(zk,fmpz(na)) Internal error: encountered unexpected error in runtime: MethodError(f=typeof(Base.string)(), args=(Expr(:<:, :t, :r),), world=0x0000000000000f21) jl_method_error_bare at /var/tmp/portage/dev-lang/julia-1.4.2/work/julia-1.4.2/src/gf.c:1719 ...
Interestingly it does not appear if the optional Bool is specified explicitly:
julia> norm_equation_fac_elem(zk,fmpz(na),abs=false) 1-element Array{FacElem{nf_elem,AnticNumberField},1}: Factored element with data Dict{nfelem,fmpz}(-41//5997*$^2 + 554//5997*_$ - 256//1999 => -1,-1 => 1)
Also julia `@code_warntype` fails with an AssertionError. julia seems to be very deep in the type inference and then fail because some type is too complex? (the assertion is here: https://github.com/JuliaLang/julia/blob/master/base/compiler/typelimits.jl#L23)
julia> @code_warntype norm_equation_fac_elem(zk,fmpz(na)) ERROR: AssertionError: t <: r Stacktrace: [1] limit_type_size(::Any, ::Any, ::Any, ::Int64, ::Int64) at ./compiler/typelimits.jl:23 [2] abstract_call_method(::Method, ::Any, ::Core.SimpleVector, ::Bool, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:359 [3] abstract_call_gf_by_type(::Any, ::Array{Any,1}, ::Any, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:101 [4] abstract_call_known(::Any, ::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:873 [5] abstract_call(::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:895 [6] abstract_call(::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:880 [7] abstract_eval(::Any, ::Array{Any,1}, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:974 [8] typeinf_local(::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:1227 [9] typeinf_nocycle(::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:1283 [10] typeinf(::Core.Compiler.InferenceState) at ./compiler/typeinfer.jl:12 [11] typeinf_edge(::Method, ::Any, ::Core.SimpleVector, ::Core.Compiler.InferenceState) at ./compiler/typeinfer.jl:488 [12] abstract_call_method(::Method, ::Any, ::Core.SimpleVector, ::Bool, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:404 [13] abstract_call_gf_by_type(::Any, ::Array{Any,1}, ::Any, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:101 [14] abstract_call_known(::Any, ::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:873 [15] abstract_call(::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:895 [16] abstract_call(::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:880 [17] abstract_eval(::Any, ::Array{Any,1}, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:974 [18] typeinf_local(::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:1213 [19] typeinf_nocycle(::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:1295 [20] typeinf(::Core.Compiler.InferenceState) at ./compiler/typeinfer.jl:12 [21] typeinf_edge(::Method, ::Any, ::Core.SimpleVector, ::Core.Compiler.InferenceState) at ./compiler/typeinfer.jl:488 [22] abstract_call_method(::Method, ::Any, ::Core.SimpleVector, ::Bool, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:404 [23] abstract_call_gf_by_type(::Any, ::Array{Any,1}, ::Any, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:101 [24] abstract_call_known(::Any, ::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:873 [25] abstract_call(::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:895 [26] abstract_call(::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:880 [27] abstract_eval(::Any, ::Array{Any,1}, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:974 [28] typeinf_local(::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:1227 [29] typeinf_nocycle(::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:1283 ... (the last 10 lines are repeated 2 more times) [50] typeinf(::Core.Compiler.InferenceState) at ./compiler/typeinfer.jl:12 [51] typeinf_edge(::Method, ::Any, ::Core.SimpleVector, ::Core.Compiler.InferenceState) at ./compiler/typeinfer.jl:488 [52] abstract_call_method(::Method, ::Any, ::Core.SimpleVector, ::Bool, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:404 [53] abstract_call_gf_by_type(::Any, ::Array{Any,1}, ::Any, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:101 [54] abstract_call_known(::Any, ::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:873 [55] abstract_call(::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:895 [56] abstract_call(::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:880 [57] abstract_eval(::Any, ::Array{Any,1}, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:974 [58] typeinf_local(::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:1213 [59] typeinf_nocycle(::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:1283 [60] typeinf(::Core.Compiler.InferenceState) at ./compiler/typeinfer.jl:12 [61] typeinf_edge(::Method, ::Any, ::Core.SimpleVector, ::Core.Compiler.InferenceState) at ./compiler/typeinfer.jl:488 [62] abstract_call_method(::Method, ::Any, ::Core.SimpleVector, ::Bool, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:404 [63] abstract_call_gf_by_type(::Any, ::Array{Any,1}, ::Any, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:101 [64] abstract_call_known(::Any, ::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:873 [65] abstract_call(::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:895 [66] abstract_call(::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:880 [67] abstract_eval(::Any, ::Array{Any,1}, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:974 [68] typeinf_local(::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:1227 ... (the last 10 lines are repeated 1 more time) [79] typeinf_nocycle(::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:1295 [80] typeinf(::Core.Compiler.InferenceState) at ./compiler/typeinfer.jl:12 [81] typeinf_edge(::Method, ::Any, ::Core.SimpleVector, ::Core.Compiler.InferenceState) at ./compiler/typeinfer.jl:488 [82] abstract_call_method(::Method, ::Any, ::Core.SimpleVector, ::Bool, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:404 [83] abstract_call_gf_by_type(::Any, ::Array{Any,1}, ::Any, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:101 [84] abstract_call_known(::Any, ::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:873 [85] abstract_call(::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:895 [86] abstract_call(::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:880 [87] abstract_eval(::Any, ::Array{Any,1}, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:974 [88] typeinf_local(::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:1227 [89] typeinf_nocycle(::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:1283 ... (the last 10 lines are repeated 3 more times) [120] typeinf(::Core.Compiler.InferenceState) at ./compiler/typeinfer.jl:12 [121] typeinf_edge(::Method, ::Any, ::Core.SimpleVector, ::Core.Compiler.InferenceState) at ./compiler/typeinfer.jl:488 [122] abstract_call_method(::Method, ::Any, ::Core.SimpleVector, ::Bool, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:404 [123] abstract_call_gf_by_type(::Any, ::Array{Any,1}, ::Any, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:101 [124] abstract_call_known(::Any, ::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:873 [125] abstract_call(::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:895 [126] abstract_call(::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:880 [127] abstract_eval(::Any, ::Array{Any,1}, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:974 [128] typeinf_local(::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:1213 [129] typeinf_nocycle(::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:1283 ... (the last 10 lines are repeated 3 more times) [160] typeinf(::Core.Compiler.InferenceState) at ./compiler/typeinfer.jl:12 [161] typeinf_edge(::Method, ::Any, ::Core.SimpleVector, ::Core.Compiler.InferenceState) at ./compiler/typeinfer.jl:488 [162] abstract_call_method(::Method, ::Any, ::Core.SimpleVector, ::Bool, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:404 [163] abstract_call_gf_by_type(::Any, ::Array{Any,1}, ::Any, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:101 [164] abstract_call_known(::Any, ::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:873 [165] abstract_call(::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState, ::Int64) at ./compiler/abstractinterpretation.jl:895 [166] abstract_call(::Array{Any,1}, ::Array{Any,1}, ::Array{Any,1}, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:880 [167] abstract_eval(::Any, ::Array{Any,1}, ::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:974 [168] typeinf_local(::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:1227 [169] typeinf_nocycle(::Core.Compiler.InferenceState) at ./compiler/abstractinterpretation.jl:1283 ... (the last 10 lines are repeated 2 more times) [190] typeinf(::Core.Compiler.InferenceState) at ./compiler/typeinfer.jl:12 [191] typeinf_code(::Method, ::Any, ::Core.SimpleVector, ::Bool, ::Core.Compiler.Params) at ./compiler/typeinfer.jl:515 [192] code_typed(::Any, ::Any; optimize::Bool, debuginfo::Symbol, world::UInt64, params::Core.Compiler.Params) at ./reflection.jl:1107 [193] code_warntype(::Base.TTY, ::Any, ::Any; debuginfo::Symbol, optimize::Bool) at /var/tmp/portage/dev-lang/julia-1.4.2/work/julia-1.4.2/usr/share/julia/stdlib/v1.4/InteractiveUtils/src/codeview.jl:37 [194] code_warntype(::Base.TTY, ::Any, ::Any) at /var/tmp/portage/dev-lang/julia-1.4.2/work/julia-1.4.2/usr/share/julia/stdlib/v1.4/InteractiveUtils/src/codeview.jl:35 [195] code_warntype(::Any, ::Any; kwargs::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}}) at /var/tmp/portage/dev-lang/julia-1.4.2/work/julia-1.4.2/usr/share/julia/stdlib/v1.4/InteractiveUtils/src/codeview.jl:61 [196] code_warntype(::Any, ::Any) at /var/tmp/portage/dev-lang/julia-1.4.2/work/julia-1.4.2/usr/share/julia/stdlib/v1.4/InteractiveUtils/src/codeview.jl:61
-- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/oscar-system/Oscar.jl/issues/104#issuecomment-646577624
Which one is "The other error" that points at GAP?
In the log in the first post:
GAPGroups_interface_conformance | 183 183
Iteration: Error During Test at /home/wbhart/.julia/dev/Oscar/test/Groups/testing.jl:178
Got exception outside of a @test
failed to convert GapObj to any known type:
GAP: ()
Stacktrace:
[1] gap_to_julia(::Main.ForeignGAP.MPtr; recursive::Bool) at /home/wbhart/.julia/packages/GAP/7sFvk/src/gap_to_julia.jl:311
[2] #gap_to_julia#9 at /home/wbhart/.julia/packages/GAP/7sFvk/src/gap_to_julia.jl:57 [inlined]
[3] #gap_to_julia#7 at /home/wbhart/.julia/packages/GAP/7sFvk/src/gap_to_julia.jl:53 [inlined]
[4] #13 at /home/wbhart/.julia/packages/GAP/7sFvk/src/gap_to_julia.jl:163 [inlined]
[5] get!(::GAP.var"#13#14"{Any,IdDict{Any,Any},Main.ForeignGAP.MPtr}, ::IdDict{Any,Any}, ::Any) at ./abstractdict.jl:663
[6] gap_to_julia(::Type{Array{Any,1}}, ::Main.ForeignGAP.MPtr, ::IdDict{Any,Any}; recursive::Bool) at /home/wbhart/.julia/packages/GAP/7sFvk/src/gap_to_julia.jl:162
[7] gap_to_julia(::Main.ForeignGAP.MPtr; recursive::Bool) at /home/wbhart/.julia/packages/GAP/7sFvk/src/gap_to_julia.jl:309
[8] gap_to_julia(::Main.ForeignGAP.MPtr) at /home/wbhart/.julia/packages/GAP/7sFvk/src/gap_to_julia.jl:299
[9] elements(::PermGroup) at /home/wbhart/.julia/dev/Oscar/src/Groups/GAPGroups.jl:67
[10] macro expansion at /home/wbhart/.julia/dev/Oscar/test/Groups/testing.jl:181 [inlined]
[11] macro expansion at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.4/Test/src/Test.jl:1113 [inlined]
[12] top-level scope at /home/wbhart/.julia/dev/Oscar/test/Groups/testing.jl:179
[13] include(::String) at ./client.jl:439
[14] top-level scope at /home/wbhart/.julia/dev/Oscar/test/Groups/runtests.jl:4
[15] include(::String) at ./client.jl:439
[16] top-level scope at none:8
[17] include(::String) at ./client.jl:439
[18] top-level scope at none:6
[19] eval(::Module, ::Any) at ./boot.jl:331
[20] exec_options(::Base.JLOptions) at ./client.jl:264
[21] _start() at ./client.jl:484
Ah OK. Yeah that should already be resolved on master (but I'll check once I am back at my computer and fix it if it is still there)
Just to confirm that I can reproduce this internal error on a 2-weeks old Julia's master branch, but not on today's master. I will compile the Julia-1.5 branch (that with backports) to see if the fix was backported already.
@rfourquet I get the same issue with Julia 1.5.0-beta1 but indeed it works for me with the current Julia master
.
We could try to git bisect
from here.
And I get the same issue with the backports-release-1.5
branch. I will try now to find the commit which fixes it and ask whether this can be backported.
This is fixed on master by https://github.com/JuliaLang/julia/commit/cb41bbbce7938bd716d24fc82094c6eb87beb26c from https://github.com/JuliaLang/julia/pull/36200 (CC @rfourquet )
Submit to Julia issue tracker as https://github.com/JuliaLang/julia/issues/36407
I am getting type inference and other crashes in Julia-1.4.2 when running the Oscar tests.