forward defs for struct tags rtx_def, union_tree, rtvec_def
also output corresponding typedefs for rtxm, tree, and rtvcec.
* system.h: Move forward defs for struct tags rtx_def, union_tree,
rtvec_def along with corresponding typedefs for rtx, tree, and
rtvcec to config.h, hconfig.h, tconfig.h
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@48499
138bc75d-0d04-0410-961f-
82ee72b054a4
-2000-01-03 Graham Stott <grahams@redhat.com>
+2002-01-03 Graham Stott <grahams@redhat.com>
+
+ * mkconfig.sh: Output to config.h, hconfig.h and tconfig.h
+ forward defs for struct tags rtx_def, union_tree, rtvec_def
+ also output corresponding typedefs for rtxm, tree, and rtvcec.
+
+ * system.h: Move forward defs for struct tags rtx_def, union_tree,
+ rtvec_def along with corresponding typedefs for rtx, tree, and
+ rtvcec to config.h, hconfig.h, tconfig.h
+
+2002-01-03 Graham Stott <grahams@redhat.com>
* tree.h: Update copyright date.
(IS_EXPR_CODE_CLASS): Add parenthesis.
esac
fi
+# Provide three core typedefs used by everything, if we are compiling
+# GCC. These used to be found in rtl.h and tree.h, but this is no
+# longer practical. Providing these in config.h/tconfig.h/hconfig.h
+# rather than system.h allows the typedefs to be used anywhere in GCC.
+case $output in
+ *config.h | *hconfig.h | *tconfig.h)
+ echo "#ifdef IN_GCC"
+ echo "/* Provide three core typedefs used by everything, if we are compiling"
+ echo " GCC. These used to be found in rtl.h and tree.h, but this is no"
+ echo " longer practical. Providing these here rather that system.h allows"
+ echo " the typedefs to be used everywhere within GCC. */"
+ echo "struct rtx_def;"
+ echo "typedef struct rtx_def *rtx;"
+ echo "struct rtvec_def;"
+ echo "typedef struct rtvec_def *rtvec;"
+ echo "union tree_node;"
+ echo "typedef union tree_node *tree;"
+ echo "#endif"
+ ;;
+esac
+
if [ -n "$HEADERS" ]; then
echo '#ifdef IN_GCC'
for file in $HEADERS; do
#define TRUE true
#define FALSE false
-/* Provide three core typedefs used by everything, if we are compiling
- GCC. These used to be found in rtl.h and tree.h, but this is no
- longer practical. */
-#ifdef IN_GCC
-struct rtx_def;
-struct rtvec_def;
-union tree_node;
-typedef struct rtx_def *rtx;
-typedef struct rtvec_def *rtvec;
-typedef union tree_node *tree;
-#endif
-
/* As the last action in this file, we poison the identifiers that
shouldn't be used. Note, luckily gcc-3.0's token-based integrated
preprocessor won't trip on poisoned identifiers that arrive from