@@ -302,10 +302,7 @@ function set_to_running_name!(interp::Interpreter, replacements::Dict{GlobalRef,
302302    replacements[callee] =  cname
303303    mi =  methodinfos[cname] =  methodinfos[callee]
304304    src =  frame. framecode. src
305-     replacename! (@view (src. code[mi. start: mi. stop]), callee=> cname) #  the method itself
306-     for  r in  mi. refs                                               #  the references
307-         replacename! ((src. code[r]):: Expr , callee=> cname)
308-     end 
305+     replacename! (src, callee=> cname) #  the method itself
309306    return  replacements
310307end 
311308
398395""" 
399396    replacename!(stmts, oldname=>newname) 
400397
401- Replace a Symbol `oldname` with `newname` in `stmts`. 
398+ Replace a Symbol `oldname` with GlobalRef  `newname` in `stmts`. 
402399""" 
403400function  replacename! (ex:: Expr , pr)
404401    replacename! (ex. args, pr)
@@ -417,14 +414,16 @@ function replacename!(args::AbstractVector, pr)
417414            replacename! (a. code, pr)
418415        elseif  isa (a, QuoteNode) &&  a. value ===  oldname
419416            args[i] =  QuoteNode (newname)
417+         elseif  isa (a, QuoteNode) &&  a. value ===  oldname. name
418+             args[i] =  QuoteNode (newname. name)
420419        elseif  isa (a, Vector{Any})
421420            replacename! (a, pr)
422421        elseif  isa (a, Core. ReturnNode) &&  isdefined (a, :val ) &&  a. val isa  Expr
423422            #  there is something like `ReturnNode(Expr(:method, Symbol(...)))`
424423            replacename! (a. val:: Expr , pr)
425424        elseif  a ===  oldname
426425            args[i] =  newname
427-         elseif  isa (a, Symbol)  &&   a ==  oldname. name
426+         elseif  a ==  oldname. name
428427            args[i] =  newname. name
429428        end 
430429    end 
0 commit comments