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. 

Reply via email to