This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[lto] PATCH: fix missing CALL_EXPR abstraction in gcc/java/parse.y


Hopefully, this is the last spot I missed! :-P Already committed as "obvious".

-Sandra


2006-08-09  Sandra Loosemore  <sandra@codesourcery.com>

	* gcc/java/parse.y (patch_unaryop): Use CALL_EXPR_FN to pick
	apart CALL_EXPRs.  
Index: gcc/java/parse.y
===================================================================
*** gcc/java/parse.y	(revision 116047)
--- gcc/java/parse.y	(working copy)
*************** patch_unaryop (tree node, tree wfl_op)
*** 14367,14375 ****
               access the field. It has been already verified that this
               field isn't final */
  	  if (flag_emit_class_files)
! 	    decl = TREE_OPERAND (op, 0);
  	  else
! 	    decl = TREE_OPERAND (TREE_OPERAND (TREE_OPERAND (op, 0), 0), 0);
  	  decl = DECL_FUNCTION_ACCESS_DECL (decl);
  	}
        /* We really should have a JAVA_ARRAY_EXPR to avoid this */
--- 14367,14379 ----
               access the field. It has been already verified that this
               field isn't final */
  	  if (flag_emit_class_files)
! 	    /* OP is a CALL_EXPR with the decl as its function.  */
! 	    decl = CALL_EXPR_FN (op);
  	  else
! 	    /* OP is a CALL_EXPR with another CALL_EXPR as its function;
! 	       the function of the inner CALL_EXPR is an ADDR_EXPR
! 	       with the decl as its operand.  */
! 	    decl = TREE_OPERAND (CALL_EXPR_FN (CALL_EXPR_FN (op)), 0);
  	  decl = DECL_FUNCTION_ACCESS_DECL (decl);
  	}
        /* We really should have a JAVA_ARRAY_EXPR to avoid this */

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]