@@ -576,7 +576,7 @@ function bodymethod(mkw::Method)
576
576
local src
577
577
while true
578
578
framecode = JuliaInterpreter. get_framecode (m)
579
- fakeargs = Any[nothing for i = 1 : framecode. scope. nargs]
579
+ fakeargs = Any[nothing for i = 1 : ( framecode. scope:: Method ) . nargs]
580
580
frame = JuliaInterpreter. prepare_frame (framecode, fakeargs, isa (m. sig, UnionAll) ? sparam_ub (m) : Core. svec ())
581
581
src = framecode. src
582
582
(length (src. code) > 1 && is_self_call (src. code[end - 1 ], src. slotnames)) || break
@@ -585,13 +585,13 @@ function bodymethod(mkw::Method)
585
585
while pc < length (src. code) - 1
586
586
pc = step_expr! (frame)
587
587
end
588
- val = pc > 1 ? frame. framedata. ssavalues[pc- 1 ] : src. code[1 ]. args[end ]
589
- sig = Tuple{Base. unwrap_unionall (m. sig). parameters... , typeof (val)}
588
+ val = pc > 1 ? frame. framedata. ssavalues[pc- 1 ] : ( src. code[1 ]:: Expr ) . args[end ]
589
+ sig = Tuple{( Base. unwrap_unionall (m. sig) :: DataType ). parameters... , typeof (val)}
590
590
m = whichtt (sig)
591
591
end
592
592
length (src. code) > 1 || return m
593
593
stmt = src. code[end - 1 ]
594
- if isexpr (stmt, :call ) && (f = stmt. args[1 ]; isa (f, QuoteNode))
594
+ if isexpr (stmt, :call ) && (f = ( stmt:: Expr ) . args[1 ]; isa (f, QuoteNode))
595
595
if f. value === (isdefined (Core, :_apply_iterate ) ? Core. _apply_iterate : Core. _apply)
596
596
ssaref = stmt. args[end - 1 ]
597
597
if isa (ssaref, JuliaInterpreter. SSAValue)
0 commit comments