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]

[C++ PATCH]: Partial fix for 1505


Hi,
I've installed this patch for bug 1505 which enters an infinite recursion.
Unfortunately fixing that only shows further problems with that report.

built & tested on i686-pc-linux-gnu, approved by Mark

nathan
-- 
Dr Nathan Sidwell   ::   http://www.codesourcery.com   ::   CodeSourcery LLC
         'But that's a lie.' - 'Yes it is. What's your point?'
nathan@codesourcery.com : http://www.cs.bris.ac.uk/~nathan/ : nathan@acm.org
2001-01-15  Nathan Sidwell  <nathan@codesourcery.com>

	* tree.c (walk_tree, TREE_LIST): Don't walk the TREE_PURPOSE of
	BASELINK_P.

Index: cp/tree.c
===================================================================
RCS file: /cvs/gcc/egcs/gcc/cp/tree.c,v
retrieving revision 1.228
diff -c -3 -p -r1.228 tree.c
*** tree.c	2001/01/15 03:33:53	1.228
--- tree.c	2001/01/15 14:16:45
*************** walk_tree (tp, func, data, htab)
*** 1311,1317 ****
        break;
  
      case TREE_LIST:
!       WALK_SUBTREE (TREE_PURPOSE (*tp));
        WALK_SUBTREE (TREE_VALUE (*tp));
        WALK_SUBTREE (TREE_CHAIN (*tp));
        break;
--- 1311,1319 ----
        break;
  
      case TREE_LIST:
!       /* A BASELINK_P's TREE_PURPOSE is a BINFO, and hence circular.  */
!       if (!BASELINK_P (*tp))
!         WALK_SUBTREE (TREE_PURPOSE (*tp));
        WALK_SUBTREE (TREE_VALUE (*tp));
        WALK_SUBTREE (TREE_CHAIN (*tp));
        break;

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