Can't retrieve proc name for use in call while validating proc existence
Code Snippet (if applicable) to Reproduce Problem:
/mob/proc/funny()
world << "funny base"
/mob/second/funny()
world << "funny second"
/mob/verb/example1()
set name = "static example"
var/static/proc_ref = .proc/funny::name
var/mob/second/F = new()
call(F,proc_ref)()
/mob/verb/example2()
set name = "example"
var/proc_ref = .proc/funny::name
var/mob/second/F = new()
call(F,proc_ref)()
Expected Results:
example1: "funny second"
example2: "funny second"
Actual Results:
example1: runtime error: undefined proc or verb /mob/second/().
example2: runtime error: undefined proc or verb /mob/second/mob().
Workarounds:
Using (#X || type::##X()) and similar constructs but that's compile time expensive
I'm trying to work out a better way of handling this at the moment. I'll follow up when I have something.