summaryrefslogtreecommitdiff
path: root/gcc/c-pragma.h
diff options
context:
space:
mode:
authorzack <zack@138bc75d-0d04-0410-961f-82ee72b054a4>2000-09-07 22:24:34 +0000
committerzack <zack@138bc75d-0d04-0410-961f-82ee72b054a4>2000-09-07 22:24:34 +0000
commit1fcd08b185406bf47bb33b56a0ed3d343144f5d9 (patch)
treea9b9cd034b9b3c1cc173cb5e609c95a9d4411d72 /gcc/c-pragma.h
parentfa88dd2b056ac00a80273ea1076961c862067420 (diff)
downloadgcc-1fcd08b185406bf47bb33b56a0ed3d343144f5d9.tar.gz
* c-pragma.h: Define HANDLE_GENERIC_PRAGMAS if
REGISTER_TARGET_PRAGMAS is defined. Duplicate some definitions from cpplib.h. * cpplib.h: Don't typedef struct cpp_reader if c-pragma.h has already done it. * tm.texi: Document HANDLE_PRAGMA as no longer supported. Add documentation for REGISTER_TARGET_PRAGMAS. * c-lex.c: Include cpplib.h before c-pragma.h. Define a default-pragma callback to implement -Wunknown-pragmas if USE_CPPLIB. * c-parse.in: Move all includes to top of file. * c-pragma.c: Include cpplib.h before c-pragma.h. Include tm_p.h. (dispatch_pragma): Put the namespace in the -Wunknown-pragmas warning. (init_pragma): If REGISTER_TARGET_PRAGMAS is defined, call it. * arm.h, arm-protos.h, arm.c, c4x.h, c4x-protos.h, c4x.c, h8300.h, h8300-protos.h, h8300.c, i370.h, i370-protos.h, i370.c, i960.h, i960-protos.h, i960.c, sh.h, sh-protos.h, sh.c, v850.h, v850-protos.h, v850.c: Convert HANDLE_PRAGMA-based pragmata scheme to use REGISTER_TARGET_PRAGMAS instead. * d30v.h: Don't mention HANDLE_PRAGMA in comment. Add multiple include guard. * i370.md (untyped_call): Use GEN_CALL. (umodsi3): Remove unused variable. * sh/elf.h: Don't undef HANDLE_SYSV_PRAGMA. * v850.c (output_move_single, output_move_double): Constify return value. (print_operand): Constify a char *. * v850.h (struct small_memory_info): Constify name member. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@36249 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/c-pragma.h')
-rw-r--r--gcc/c-pragma.h14
1 files changed, 13 insertions, 1 deletions
diff --git a/gcc/c-pragma.h b/gcc/c-pragma.h
index 50d0f57ab7a..d669d9d734f 100644
--- a/gcc/c-pragma.h
+++ b/gcc/c-pragma.h
@@ -62,7 +62,8 @@ extern int add_weak PARAMS ((const char *, const char *));
parsing is to be done. The code in GCC's generic C source files
will only look for the definition of this constant. They will
ignore definitions of HANDLE_PRAGMA_PACK and so on. */
-#if defined HANDLE_PRAGMA_PACK || defined HANDLE_PRAGMA_WEAK
+#if defined HANDLE_PRAGMA_PACK || defined HANDLE_PRAGMA_WEAK \
+ || defined REGISTER_TARGET_PRAGMAS
#define HANDLE_GENERIC_PRAGMAS
#endif
@@ -77,4 +78,15 @@ extern void dispatch_pragma PARAMS ((void));
# define init_pragma()
#endif
+/* Duplicate prototypes for the register_pragma stuff and the typedef for
+ cpp_reader, to avoid dragging cpplib.h in almost everywhere... */
+#ifndef __GCC_CPPLIB__
+typedef struct cpp_reader cpp_reader;
+
+extern void cpp_register_pragma PARAMS ((cpp_reader *,
+ const char *, const char *,
+ void (*) PARAMS ((cpp_reader *))));
+extern void cpp_register_pragma_space PARAMS ((cpp_reader *, const char *));
+#endif
+
#endif /* _C_PRAGMA_H */