Project

General

Profile

Feature #11297 ยป private_with_self.diff

soutaro (Soutaro Matsumoto), 06/23/2015 01:15 PM

View differences:

compile.c
4585 4585
	}
4586 4586
#endif
4587 4587
	/* receiver */
4588
	if (type == NODE_CALL) {
4588
	if (type == NODE_CALL && nd_type(node->nd_recv) != NODE_SELF) {
4589 4589
	    COMPILE(recv, "recv", node->nd_recv);
4590 4590
	}
4591
	else if (type == NODE_FCALL || type == NODE_VCALL) {
4591
	else if (type == NODE_CALL || type == NODE_FCALL || type == NODE_VCALL) {
4592 4592
	    ADD_CALL_RECEIVER(recv, line);
4593 4593
	}
4594 4594

  
......
4606 4606
	debugp_param("call args argc", argc);
4607 4607
	debugp_param("call method", ID2SYM(mid));
4608 4608

  
4609
  if (nd_type(node) == NODE_CALL && nd_type(node->nd_recv) == NODE_SELF) {
4610
    flag |= VM_CALL_FCALL;
4611
  }
4612

  
4609 4613
	switch (nd_type(node)) {
4610 4614
	  case NODE_VCALL:
4611 4615
	    flag |= VM_CALL_VCALL;