* coretypes.h (cpp_reader): Forward declare struct.
* c-pragma.h (cpp_reader): Remove forward declaration.
* hashtable.h (cpp_reader): Likewise.
* scan.h (cpp_reader): Likewise.
* tree.h (cpp_reader): Likewise.
* config/darwin-protos.h (cpp_reader): Likewise.
* config/arm/arm-protos.h (cpp_reader): Likewise.
* config/rs6000/rs6000-protos.h: Remove GCC_CPPLIB_H ifdef, use
struct cpp_reader in prototypes.
From-SVN: r62050
+2003-01-28 Stan Shebs <shebs@apple.com>
+
+ * coretypes.h (cpp_reader): Forward declare struct.
+ * c-pragma.h (cpp_reader): Remove forward declaration.
+ * hashtable.h (cpp_reader): Likewise.
+ * scan.h (cpp_reader): Likewise.
+ * tree.h (cpp_reader): Likewise.
+ * config/darwin-protos.h (cpp_reader): Likewise.
+ * config/arm/arm-protos.h (cpp_reader): Likewise.
+ * config/rs6000/rs6000-protos.h: Remove GCC_CPPLIB_H ifdef, use
+ struct cpp_reader in prototypes.
+
2003-01-28 Christian Cornelssen <ccorn@cs.tu-berlin.de>
* doc/install.texi: Add documentation for installation into
#define YYDEBUG 1
extern int yydebug;
-struct cpp_reader;
extern struct cpp_reader* parse_in;
#ifdef HANDLE_SYSV_PRAGMA
enum machine_mode, int));
#endif
-struct cpp_reader;
extern void arm_pr_long_calls PARAMS ((struct cpp_reader *));
extern void arm_pr_no_long_calls PARAMS ((struct cpp_reader *));
extern void arm_pr_long_calls_off PARAMS ((struct cpp_reader *));
extern void machopic_select_rtx_section PARAMS ((enum machine_mode, rtx,
unsigned HOST_WIDE_INT));
-struct cpp_reader;
extern void darwin_pragma_ignore PARAMS ((struct cpp_reader *));
extern void darwin_pragma_options PARAMS ((struct cpp_reader *));
extern void darwin_pragma_unused PARAMS ((struct cpp_reader *));
/* Declare functions in rs6000-c.c */
-#ifdef GCC_CPPLIB_H
-extern void rs6000_pragma_longcall PARAMS ((cpp_reader *));
-extern void rs6000_cpu_cpp_builtins PARAMS ((cpp_reader *));
-#endif
+extern void rs6000_pragma_longcall PARAMS ((struct cpp_reader *));
+extern void rs6000_cpu_cpp_builtins PARAMS ((struct cpp_reader *));
#endif /* rs6000-protos.h */
union tree_node;
typedef union tree_node *tree;
+/* Provide forward struct declaration so that we don't have to include
+ all of cpplib.h whenever a random prototype includes a pointer.
+ Note that the cpp_reader typedef remains part of cpplib.h. */
+
+struct cpp_reader;
+
#else
struct _dont_use_rtx_here_;
#define HT_LEN(NODE) ((NODE)->len)
#define HT_STR(NODE) ((NODE)->str)
-/* We want code outside cpplib, such as the compiler front-ends, to be
- able to include this header, and to be able to link with
- cpphashtbl.o without pulling in any other parts of cpplib. */
-
-struct cpp_reader;
typedef struct ht hash_table;
typedef struct ht_identifier *hashnode;
extern void recognized_extern _PARAMS((const struct cpp_token *));
extern unsigned int hashstr _PARAMS((const char *, unsigned int));
-struct cpp_reader;
extern int scan_decls _PARAMS((struct cpp_reader *, int, char **));
/* get_token is a simple C lexer. */
extern tree merge_decl_attributes PARAMS ((tree, tree));
extern tree merge_type_attributes PARAMS ((tree, tree));
-struct cpp_reader;
extern void default_register_cpp_builtins PARAMS ((struct cpp_reader *));
/* Split a list of declspecs and attributes into two. */