When trying to pre-compile one of our modules on v0.6, I got this strange inference failure.
Everything works fine on v0.4.7, v0.5.0 and v0.5.1.
The stack trace goes on and on, but never displays any information about where it was in the source code that triggered this failure.
I’m pretty sure about a week ago, everything compiled just fine on master.
julia> using ActionData
INFO: Precompiling module ActionData.
WARNING: An error occurred during inference. Type inference is now partially disabled.
Base.MethodError(f=Base.#string(), args=(Expr(:||, Expr(:call, :!, Expr(:call, :isa, :t, :Type)::Any)::Any, Expr(:<:, :t, :r)::Any)::Any,), world=0x0000000000000aa3)
rec_backtrace at /julia/julia-linux/src/stackwalk.c:84
record_backtrace at /julia/julia-linux/src/task.c:239
jl_throw at /julia/julia-linux/src/task.c:565
jl_method_error_bare at /julia/julia-linux/src/gf.c:1431
jl_method_error at /julia/julia-linux/src/gf.c:1449
jl_lookup_generic_ at /julia/julia-linux/src/gf.c:2202 [inlined]
jl_apply_generic at /julia/julia-linux/src/gf.c:2222
limit_type_depth at ./inference.jl:666
unknown function (ip: 0x7fcdf3009cc2)
jl_call_fptr_internal at /julia/julia-linux/src/julia_internal.h:326 [inlined]
jl_call_method_internal at /julia/julia-linux/src/julia_internal.h:345 [inlined]
jl_apply_generic at /julia/julia-linux/src/gf.c:2225
abstract_call_gf_by_type at ./inference.jl:1328
unknown function (ip: 0x7fcdf2fe3a96)
jl_call_fptr_internal at /julia/julia-linux/src/julia_internal.h:326 [inlined]
jl_call_method_internal at /julia/julia-linux/src/julia_internal.h:345 [inlined]
jl_apply_generic at /julia/julia-linux/src/gf.c:2225
abstract_call at ./inference.jl:1856
unknown function (ip: 0x7fcdf2fdf9ce)
jl_call_fptr_internal at /julia/julia-linux/src/julia_internal.h:326 [inlined]
jl_call_method_internal at /julia/julia-linux/src/julia_internal.h:345 [inlined]
jl_apply_generic at /julia/julia-linux/src/gf.c:2225
abstract_eval_call at ./inference.jl:1886
abstract_eval at ./inference.jl:1909
unknown function (ip: 0x7fcdf2fda9f6)
jl_call_fptr_internal at /julia/julia-linux/src/julia_internal.h:326 [inlined]
jl_call_method_internal at /julia/julia-linux/src/julia_internal.h:345 [inlined]
jl_apply_generic at /julia/julia-linux/src/gf.c:2225
copy! at ./abstractarray.jl:565
abstract_eval_call at ./inference.jl:1860
abstract_eval at ./inference.jl:1909
unknown function (ip: 0x7fcdf2fda9f6)
jl_call_fptr_internal at /julia/julia-linux/src/julia_internal.h:326 [inlined]
jl_call_method_internal at /julia/julia-linux/src/julia_internal.h:345 [inlined]
jl_apply_generic at /julia/julia-linux/src/gf.c:2225
typeinf_frame at ./inference.jl:2745
typeinf_loop at ./inference.jl:2591
typeinf_frame at ./inference.jl:2461
typeinf_edge at ./inference.jl:2484
unknown function (ip: 0x7fcdf2fe5b1a)
jl_call_fptr_internal at /julia/julia-linux/src/julia_internal.h:326 [inlined]
jl_call_method_internal at /julia/julia-linux/src/julia_internal.h:345 [inlined]
jl_apply_generic at /julia/julia-linux/src/gf.c:2225
abstract_call_gf_by_type at ./inference.jl:1378
unknown function (ip: 0x7fcdf2fe3a96)
jl_call_fptr_internal at /julia/julia-linux/src/julia_internal.h:326 [inlined]
jl_call_method_internal at /julia/julia-linux/src/julia_internal.h:345 [inlined]
jl_apply_generic at /julia/julia-linux/src/gf.c:2225
abstract_call at ./inference.jl:1856
unknown function (ip: 0x7fcdf3001d7a)
jl_call_fptr_internal at /julia/julia-linux/src/julia_internal.h:326 [inlined]
jl_call_method_internal at /julia/julia-linux/src/julia_internal.h:345 [inlined]
jl_apply_generic at /julia/julia-linux/src/gf.c:2225
return_type_tfunc at ./inference.jl:1535
(note: the stack trace goes on for quite a while, generally hitting the same places over and over)
Any ideas about where this could be coming from would be appreciated.