Hello, Is this OK for trunk? It involves very few changes (the patch is cut and pasted below) and does not cause any bootstrap issues on my x86_64 running SuSE.
Thanks, -Balaji V. Iyer. > -----Original Message----- > From: Iyer, Balaji V > Sent: Monday, June 03, 2013 8:44 PM > To: gcc-patches@gcc.gnu.org > Subject: Added build_c_cast to c-family? > > Hello Everyone, > Is it OK to move build_c_cast prototype into c-common.h? The reason > for this is that, I would like to share some of the code between array > notation > for C and C++ and this function is sort of required for both places. Also, the > exact same call is available for both C and C++ with the same parameters at > the > same locations. The change involves removing the prototype from c-tree.h and > cp-tree.h and moving it to c-common.h. > > Here is the changelogs and the patch to accomplish what I am > requesting. Please let me know if it is OK for the trunk. > > gcc/c-family/ChangeLog > 2013-06-03 Balaji V. Iyer <balaji.v.i...@intel.com> > > * c-common.h (build_c_cast): Added new extern prototype. > > gcc/c/ChangeLog > 2013-06-03 Balaji V. Iyer <balaji.v.i...@intel.com> > > * c-tree.h (build_c_cast): Remove prototype. > > gcc/cp/ChangeLog > 2013-06-03 Balaji V. Iyer <balaji.v.i...@intel.com> > > * c-tree.h (build_c_cast): Remove prototype. > > > Index: gcc/c-family/c-common.h > ================================================================= > == > --- gcc/c-family/c-common.h (revision 199630) > +++ gcc/c-family/c-common.h (working copy) > @@ -538,6 +538,7 @@ > extern tree pushdecl (tree); > extern tree build_modify_expr (location_t, tree, tree, enum tree_code, > location_t, tree, tree); > +extern tree build_c_cast (location_t, tree, tree); > extern tree build_array_notation_expr (location_t, tree, tree, enum > tree_code, > location_t, tree, tree); > extern tree build_array_notation_ref (location_t, tree, tree, tree, tree, > tree); > > Index: gcc/c/c-tree.h > ================================================================= > == > --- gcc/c/c-tree.h (revision 199630) > +++ gcc/c/c-tree.h (working copy) > @@ -600,7 +600,6 @@ > tree, tree); > extern tree build_compound_expr (location_t, tree, tree); extern tree > c_cast_expr (location_t, struct c_type_name *, tree); -extern tree > build_c_cast > (location_t, tree, tree); extern void store_init_value (location_t, tree, > tree, > tree); extern void error_init (const char *); extern void pedwarn_init > (location_t, int opt, const char *); > > Index: gcc/cp/cp-tree.h > ================================================================= > == > --- gcc/cp/cp-tree.h (revision 199630) > +++ gcc/cp/cp-tree.h (working copy) > @@ -6000,7 +6000,6 @@ > extern tree build_static_cast (tree, tree, > tsubst_flags_t); > extern tree build_reinterpret_cast (tree, tree, tsubst_flags_t); > extern tree build_const_cast (tree, tree, tsubst_flags_t); > -extern tree build_c_cast (location_t, tree, tree); > extern tree cp_build_c_cast (tree, tree, tsubst_flags_t); > extern tree build_x_modify_expr (location_t, tree, > enum tree_code, tree, > Thanks, > > Balaji V. Iyer.