Initial revision
[official-gcc.git] / gcc / toplev.h
blob1f4086377197ded23fcb386540c93311f7490382
1 /* toplev.h - Various declarations for functions found in toplev.c
2 Copyright (C) 1998, 1999 Free Software Foundation, Inc.
4 This file is part of GNU CC.
6 GNU CC is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2, or (at your option)
9 any later version.
11 GNU CC is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
16 You should have received a copy of the GNU General Public License
17 along with GNU CC; see the file COPYING. If not, write to
18 the Free Software Foundation, 59 Temple Place - Suite 330,
19 Boston, MA 02111-1307, USA. */
21 #ifndef __GCC_TOPLEV_H__
22 #define __GCC_TOPLEV_H__
24 #ifdef ANSI_PROTOTYPES
25 union tree_node;
26 struct rtx_def;
27 #endif
29 extern int read_integral_parameter PROTO ((const char *, const char *,
30 const int));
31 extern int count_error PROTO ((int));
32 extern void strip_off_ending PROTO ((char *, int));
33 extern void print_time PROTO ((const char *, int));
34 extern void debug_start_source_file PROTO ((char *));
35 extern void debug_end_source_file PROTO ((unsigned));
36 extern void debug_define PROTO ((unsigned, char *));
37 extern void debug_undef PROTO ((unsigned, char *));
38 extern void fatal PVPROTO ((const char *, ...))
39 ATTRIBUTE_PRINTF_1 ATTRIBUTE_NORETURN;
40 extern void fatal_io_error PROTO ((const char *))
41 ATTRIBUTE_NORETURN;
42 extern void pfatal_with_name PROTO ((const char *))
43 ATTRIBUTE_NORETURN;
44 extern void fatal_insn_not_found PROTO ((struct rtx_def *))
45 ATTRIBUTE_NORETURN;
46 extern void fatal_insn PVPROTO ((const char *,
47 struct rtx_def *, ...))
48 ATTRIBUTE_PRINTF(1, 3) ATTRIBUTE_NORETURN;
49 extern void warning PVPROTO ((const char *, ...))
50 ATTRIBUTE_PRINTF_1;
51 extern void error PVPROTO ((const char *, ...))
52 ATTRIBUTE_PRINTF_1;
53 extern void pedwarn PVPROTO ((const char *, ...))
54 ATTRIBUTE_PRINTF_1;
55 extern void pedwarn_with_file_and_line PVPROTO ((const char *, int,
56 const char *, ...))
57 ATTRIBUTE_PRINTF_3;
58 extern void warning_with_file_and_line PVPROTO ((const char *, int,
59 const char *, ...))
60 ATTRIBUTE_PRINTF_3;
61 extern void error_with_file_and_line PVPROTO ((const char *, int,
62 const char *, ...))
63 ATTRIBUTE_PRINTF_3;
64 extern void sorry PVPROTO ((const char *, ...))
65 ATTRIBUTE_PRINTF_1;
66 extern void really_sorry PVPROTO((const char *, ...))
67 ATTRIBUTE_PRINTF_1 ATTRIBUTE_NORETURN;
68 extern void default_print_error_function PROTO ((const char *));
69 extern void report_error_function PROTO ((const char *));
71 extern void rest_of_decl_compilation PROTO ((union tree_node *,
72 const char *, int, int));
73 extern void rest_of_type_compilation PROTO ((union tree_node *, int));
74 extern void rest_of_compilation PROTO ((union tree_node *));
76 /* The *_with_decl functions aren't suitable for ATTRIBUTE_PRINTF. */
77 extern void pedwarn_with_decl PVPROTO ((union tree_node *,
78 const char *, ...));
79 extern void warning_with_decl PVPROTO ((union tree_node *,
80 const char *, ...));
81 extern void error_with_decl PVPROTO ((union tree_node *,
82 const char *, ...));
84 extern void announce_function PROTO ((union tree_node *));
86 extern void error_for_asm PVPROTO((struct rtx_def *,
87 const char *, ...))
88 ATTRIBUTE_PRINTF_2;
89 extern void warning_for_asm PVPROTO((struct rtx_def *,
90 const char *, ...))
91 ATTRIBUTE_PRINTF_2;
92 #if defined (_JBLEN) || defined (setjmp)
93 extern void set_float_handler PROTO((jmp_buf));
94 extern int push_float_handler PROTO((jmp_buf, jmp_buf));
95 extern void pop_float_handler PROTO((int, jmp_buf));
96 #endif
97 extern int do_float_handler PROTO((void (*) (PTR), PTR));
99 #ifdef BUFSIZ
100 extern void output_quoted_string PROTO ((FILE *, const char *));
101 extern void output_file_directive PROTO ((FILE *, const char *));
102 #endif
104 extern void fancy_abort PROTO ((void)) ATTRIBUTE_NORETURN;
105 extern void do_abort PROTO ((void)) ATTRIBUTE_NORETURN;
106 extern void botch PROTO ((const char *))
107 ATTRIBUTE_NORETURN;
109 #ifdef BUFSIZ
110 extern void fnotice PROTO ((FILE *, const char *, ...))
111 ATTRIBUTE_PRINTF_2;
112 #endif
114 #endif /* __GCC_TOPLEV_H */