Feature #11297 ยป private_with_self.diff
| compile.c | ||
|---|---|---|
|
}
|
||
|
#endif
|
||
|
/* receiver */
|
||
|
if (type == NODE_CALL) {
|
||
|
if (type == NODE_CALL && nd_type(node->nd_recv) != NODE_SELF) {
|
||
|
COMPILE(recv, "recv", node->nd_recv);
|
||
|
}
|
||
|
else if (type == NODE_FCALL || type == NODE_VCALL) {
|
||
|
else if (type == NODE_CALL || type == NODE_FCALL || type == NODE_VCALL) {
|
||
|
ADD_CALL_RECEIVER(recv, line);
|
||
|
}
|
||
| ... | ... | |
|
debugp_param("call args argc", argc);
|
||
|
debugp_param("call method", ID2SYM(mid));
|
||
|
if (nd_type(node) == NODE_CALL && nd_type(node->nd_recv) == NODE_SELF) {
|
||
|
flag |= VM_CALL_FCALL;
|
||
|
}
|
||
|
switch (nd_type(node)) {
|
||
|
case NODE_VCALL:
|
||
|
flag |= VM_CALL_VCALL;
|
||