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]

Re: [PATCH][C++] Fix PR40834: [4.5 Regression] Revision 149750 failed 483.xalancbmk in SPEC CPU 2006


On 07/29/2009 01:58 PM, Richard Guenther wrote:
On Wed, 29 Jul 2009, Jason Merrill wrote:

Wouldn't it work to just not clear *walk_subtrees? We won't really walk the body twice because it'll be in the pointer set when walk_tree_1 tries to walk it.

We only want to walk the BIND_EXPR tree itself twice (and we only do that).

Why do we want to do that?


The first time we need to be able to push/pop the bind-expr stack,
the second time we visit it with cp_walk_tree to get proper walking
of the BIND_EXPR subtrees.  I could have replicated those 10 lines of
code here as alternative if you prefer that.

No, I don't prefer that. We should get the proper walking of the subtrees by only walking it once, and not setting *walk_subtrees to 0.


Jason


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