On 03/24/2011 09:15 AM, Nathan Froyd wrote:
The C++-specific bits of these patches:
[PATCH 02/18] enforce TREE_CHAIN and TREE_TYPE accesses
http://gcc.gnu.org/ml/gcc-patches/2011-03/msg00557.html
OK.
[PATCH 07/18] generalize build_case_label to the rest of the compiler
http://gcc.gnu.org/ml/gcc-patches/2011-03/msg00557.html
+ tree t = make_node (CASE_LABEL_EXPR);
+
+ TREE_TYPE (t) = void_type_node;
+ SET_EXPR_LOCATION (t, input_location);
As jsm and richi said, using input_location like this is a regression.
Can we use DECL_SOURCE_LOCATION (label_decl) instead?
[PATCH 08/18] convert cp *FOR_STMTs to use private scope fields
http://gcc.gnu.org/ml/gcc-patches/2011-03/msg00553.html
[PATCH 09/18] convert cp IF_STMTs to use private scope fields
http://gcc.gnu.org/ml/gcc-patches/2011-03/msg00562.html
[PATCH 10/18] convert cp SWITCH_STMTs to use private scope fields
http://gcc.gnu.org/ml/gcc-patches/2011-03/msg00552.html
OK.
[PATCH 11/18] mark EXPR_PACK_EXPANSION as typed only
http://gcc.gnu.org/ml/gcc-patches/2011-03/msg00563.html
It looks like you need to add EXPR_PACK_EXPANSION cases to
value_dependent_expression_p and cp_tree_equal. Maybe split out the
code from write_expression that overrides TREE_OPERAND_LENGTH in some
cases and use that new function instead of TREE_OPERAND_LENGTH in these
places.
[PATCH 17/18] introduce block_chainon and use BLOCK_CHAIN more
http://gcc.gnu.org/ml/gcc-patches/2011-03/msg00566.html
OK.
Alternatively, could we have a GWP or similar rule on Tom's suggestion:
http://gcc.gnu.org/ml/gcc-patches/2011-03/msg00620.html
that patches propagating middle-end changes to front-ends are
obvious/preapproved, perhaps after a 24-48 hour waiting period for
comments? That would cover 02 and 07 above (possibly 17 as well); 02 is
blocking some of the already-approved middle-end changes later in the
series.
That makes sense to me, but I'd give it a week.
Jason