On Fri, 15 Aug 2008, Manuel López-Ibáñez wrote: > 5) Handle locations during folding or avoid aggressive folding in > the front-ends.
I plan to delay folding for C (beyond some folding for expressions of constants) for 4.5, probably in October. (I do not plan to do anything for C++, and the folding will still happen before gimplification, though I believe that in principle most of what fold-const does would be better done on language-independent IR after gimplification.) Note that for correct ranges you need to handle locations for 0 and (0) and ((0)) and so on, so either need duplicate trees for constants and parenthesised expressions or need to keep the locations outside the trees. It's possible you can keep them in the c_expr structures or other local variables, depending on whether you ever need locations for both an expression and deeply nested subexpressions of it. -- Joseph S. Myers [EMAIL PROTECTED]