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]

g77 patch to eliminate long-standing kludge


Dave Love, could you apply this patch for me please?

        tq vm, (burley)


Mon Jul 13 11:54:03 1998  Craig Burley  <burley@gnu.org>

	* com.c (ffecom_push_tempvar): Replace kludge that
	munged back-end globals directly with proper calls
	to push_topmost_sequence and pop_topmost_sequence.


*** g77-e/gcc/f/com.c.~1~	Fri Jul 10 06:53:49 1998
--- g77-e/gcc/f/com.c	Mon Jul 13 11:06:04 1998
*************** ffecom_push_tempvar (tree type, ffetarge
*** 13401,13416 ****
  						  mynumber++),
  		  type);
-   {	/* ~~~~ kludge alert here!!! else temp gets reused outside
- 	   a compound-statement sequence.... */
-     extern tree sequence_rtl_expr;
-     tree back_end_bug = sequence_rtl_expr;
  
!     sequence_rtl_expr = NULL_TREE;
  
!     t = start_decl (t, FALSE);
!     finish_decl (t, NULL_TREE, FALSE);
  
!     sequence_rtl_expr = back_end_bug;
!   }
  
    resume_momentary (yes);
--- 13401,13417 ----
  						  mynumber++),
  		  type);
  
!   /* This temp must be put in the same scope as the containing BLOCK
!      (aka function), but for reasons that should be explained elsewhere,
!      the GBE normally decides it should be in a "phantom BLOCK" associated
!      with the expand_start_stmt_expr() call.  So push the topmost
!      sequence back onto the GBE's internal stack before telling it
!      about the decl, then restore it afterwards.  */
!   push_topmost_sequence ();
  
!   t = start_decl (t, FALSE);
!   finish_decl (t, NULL_TREE, FALSE);
  
!   pop_topmost_sequence ();
  
    resume_momentary (yes);
*** g77-e/gcc/f/version.c.~1~	Sat Jul 11 19:27:03 1998
--- g77-e/gcc/f/version.c	Mon Jul 13 11:06:46 1998
***************
*** 1 ****
! char *ffe_version_string = "0.5.24-19980711";
--- 1 ----
! char *ffe_version_string = "0.5.24-19980713";


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