Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Assertion failure on 1.0 #70

Closed
maleadt opened this issue Aug 8, 2018 · 1 comment
Closed

Assertion failure on 1.0 #70

maleadt opened this issue Aug 8, 2018 · 1 comment

Comments

@maleadt
Copy link
Contributor

maleadt commented Aug 8, 2018

$ git clone https://github.com/JuliaLang/julia julia

$ cd julia

$ make -j10 LLVM_ASSERTIONS=1 FORCE_ASSERTIONS=1

$ JULIA_DEPOT_PATH=$(mktemp -d) ./julia
               _
   _       _ _(_)_     |  A fresh approach to technical computing
  (_)     | (_) (_)    |  Documentation: https://docs.julialang.org
   _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 1.0.0-rc1.5 (2018-08-07 20:49 UTC)
 _/ |\__'_|_|_|\__'_|  |  Commit d038f2f499 (0 days old master)
|__/                   |  x86_64-linux-gnu

(v1.0) pkg> add https://github.com/jrevels/Cassette.jl
   Cloning git-repo `https://github.com/jrevels/Cassette.jl`
  Updating git-repo `https://github.com/jrevels/Cassette.jl`
[ Info: Assigning UUID 59fb9612-49be-509a-8654-f972bbc0bdb2 to Cassette
 Resolving package versions...
  Updating `/tmp/tmp.WrMAkxtd5A/environments/v1.0/Project.toml`
  [59fb9612] + Cassette v0.0.0 #master (https://github.com/jrevels/Cassette.jl)
  Updating `/tmp/tmp.WrMAkxtd5A/environments/v1.0/Manifest.toml`
  [59fb9612] + Cassette v0.0.0 #master (https://github.com/jrevels/Cassette.jl)
  [2a0f44e3] + Base64 
  [8ba89e20] + Distributed 
  [b77e0a4c] + InteractiveUtils 
  [8f399da3] + Libdl 
  [37e2e46d] + LinearAlgebra 
  [56ddb016] + Logging 
  [d6f4376e] + Markdown 
  [9a3f8284] + Random 
  [9e88b42a] + Serialization 
  [6462fe0b] + Sockets 
  [8dfed614] + Test 

julia> using Cassette
[ Info: Precompiling Cassette [59fb9612-49be-509a-8654-f972bbc0bdb2]

julia> Cassette.@context Ctx
Cassette.Context{nametype(Ctx),M,P,T,B} where B<:Union{Nothing, IdDict{Module,Dict{Symbol,BindingMeta}}} where P<:Cassette.AbstractPass where T<:Union{Nothing, Tag} where M

julia> Cassette.overdub(Ctx(), /, 1, 2)
julia: julia/src/gf.c:1431: jl_method_instance_add_backedge: Assertion `callee->def.method->min_world <= caller->min_world && callee->max_world >= caller->max_world' failed.

signal (6): Aborted
in expression starting at no file:0
gsignal at /lib/x86_64-linux-gnu/libc.so.6 (unknown line)
abort at /lib/x86_64-linux-gnu/libc.so.6 (unknown line)
unknown function (ip: 0x7fd2a25d2e66)
__assert_fail at /lib/x86_64-linux-gnu/libc.so.6 (unknown line)
jl_method_instance_add_backedge at julia/src/gf.c:1431
store_backedges at ./compiler/typeinfer.jl:197
typeinf at ./compiler/typeinfer.jl:72
typeinf_edge at ./compiler/typeinfer.jl:492
abstract_call_method at ./compiler/abstractinterpretation.jl:315
abstract_call_gf_by_type at ./compiler/abstractinterpretation.jl:79
abstract_call at ./compiler/abstractinterpretation.jl:763
abstract_eval_call at ./compiler/abstractinterpretation.jl:792
abstract_eval at ./compiler/abstractinterpretation.jl:877
typeinf_local at ./compiler/abstractinterpretation.jl:1101
typeinf_nocycle at ./compiler/abstractinterpretation.jl:1157
typeinf at ./compiler/typeinfer.jl:15
typeinf_edge at ./compiler/typeinfer.jl:492
abstract_call_method at ./compiler/abstractinterpretation.jl:315
abstract_call_gf_by_type at ./compiler/abstractinterpretation.jl:79
abstract_call at ./compiler/abstractinterpretation.jl:763
abstract_eval_call at ./compiler/abstractinterpretation.jl:792
abstract_eval at ./compiler/abstractinterpretation.jl:877
typeinf_local at ./compiler/abstractinterpretation.jl:1101
typeinf_nocycle at ./compiler/abstractinterpretation.jl:1157
typeinf at ./compiler/typeinfer.jl:15
typeinf_edge at ./compiler/typeinfer.jl:492
abstract_call_method at ./compiler/abstractinterpretation.jl:315
abstract_call_gf_by_type at ./compiler/abstractinterpretation.jl:79
abstract_call at ./compiler/abstractinterpretation.jl:763
abstract_eval_call at ./compiler/abstractinterpretation.jl:792
abstract_eval at ./compiler/abstractinterpretation.jl:877
typeinf_local at ./compiler/abstractinterpretation.jl:1101
typeinf_nocycle at ./compiler/abstractinterpretation.jl:1157
typeinf at ./compiler/typeinfer.jl:15
typeinf_edge at ./compiler/typeinfer.jl:492
abstract_call_method at ./compiler/abstractinterpretation.jl:315
abstract_call_gf_by_type at ./compiler/abstractinterpretation.jl:79
abstract_call at ./compiler/abstractinterpretation.jl:763
abstract_eval_call at ./compiler/abstractinterpretation.jl:792
abstract_eval at ./compiler/abstractinterpretation.jl:877
typeinf_local at ./compiler/abstractinterpretation.jl:1101
typeinf_nocycle at ./compiler/abstractinterpretation.jl:1157
typeinf at ./compiler/typeinfer.jl:15
typeinf_ext at ./compiler/typeinfer.jl:567
typeinf_ext at ./compiler/typeinfer.jl:604
jfptr_typeinf_ext_1 at julia/usr/lib/julia/sys.so (unknown line)
jl_apply_generic at julia/src/gf.c:2182
jl_apply at julia/src/julia.h:1536 [inlined]
jl_apply_with_saved_exception_state at julia/src/rtutils.c:257
jl_type_infer at julia/src/gf.c:275
jl_fptr_trampoline at julia/src/gf.c:1784
jl_apply_generic at julia/src/gf.c:2182
jl_apply_2va at julia/src/rtutils.c:296
GeneratedFunctionStub at ./boot.jl:506
jl_apply_generic at julia/src/gf.c:2182
jl_apply at julia/src/julia.h:1536 [inlined]
jl_call_staged at julia/src/method.c:376
jl_code_for_staged at julia/src/method.c:409
get_staged at ./compiler/utilities.jl:91
retrieve_code_info at ./compiler/utilities.jl:112
Type at ./compiler/inferencestate.jl:117 [inlined]
typeinf_ext at ./compiler/typeinfer.jl:565
typeinf_ext at ./compiler/typeinfer.jl:604
jfptr_typeinf_ext_1 at julia/usr/lib/julia/sys.so (unknown line)
jl_apply_generic at julia/src/gf.c:2182
jl_apply at julia/src/julia.h:1536 [inlined]
jl_apply_with_saved_exception_state at julia/src/rtutils.c:257
jl_type_infer at julia/src/gf.c:275
jl_fptr_trampoline at julia/src/gf.c:1784
jl_apply_generic at julia/src/gf.c:2182
do_call at julia/src/interpreter.c:324
eval_value at julia/src/interpreter.c:428
eval_stmt_value at julia/src/interpreter.c:363 [inlined]
eval_body at julia/src/interpreter.c:686
jl_interpret_toplevel_thunk_callback at julia/src/interpreter.c:799
unknown function (ip: 0xfffffffffffffffe)
unknown function (ip: 0x7fd292f0d09f)
unknown function (ip: 0x1)
jl_interpret_toplevel_thunk at julia/src/interpreter.c:808
jl_toplevel_eval_flex at julia/src/toplevel.c:785
jl_toplevel_eval_in at julia/src/builtins.c:622
eval at ./boot.jl:319
jl_apply_generic at julia/src/gf.c:2182
eval_user_input at julia/usr/share/julia/stdlib/v1.0/REPL/src/REPL.jl:85
macro expansion at julia/usr/share/julia/stdlib/v1.0/REPL/src/REPL.jl:117 [inlined]
#28 at ./task.jl:259
jl_apply_generic at julia/src/gf.c:2182
jl_apply at julia/src/julia.h:1536 [inlined]
start_task at julia/src/task.c:268
unknown function (ip: 0xffffffffffffffff)
Allocations: 9302501 (Pool: 9300888; Big: 1613); GC: 18
@jrevels
Copy link
Collaborator

jrevels commented Aug 8, 2018

IIUC, this is technically a dup of #6; the assertion is just catching the invalid world-bounds problem and making it an error. Let's centralize discussion on #6.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants