rtl.def (CALL_PLACEHOLDER): New rtx code.
[gcc.git] / gcc / toplev.h
1 /* toplev.h - Various declarations for functions found in toplev.c
2 Copyright (C) 1998, 1999 Free Software Foundation, Inc.
3
4 This file is part of GNU CC.
5
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.
10
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.
15
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. */
20
21 #ifndef __GCC_TOPLEV_H__
22 #define __GCC_TOPLEV_H__
23
24 #ifdef ANSI_PROTOTYPES
25 union tree_node;
26 struct rtx_def;
27 #endif
28
29 extern int count_error PROTO ((int));
30 extern void strip_off_ending PROTO ((char *, int));
31 extern void print_time PROTO ((const char *, int));
32 extern void debug_start_source_file PROTO ((char *));
33 extern void debug_end_source_file PROTO ((unsigned));
34 extern void debug_define PROTO ((unsigned, char *));
35 extern void debug_undef PROTO ((unsigned, char *));
36 extern void fatal PVPROTO ((const char *, ...))
37 ATTRIBUTE_PRINTF_1 ATTRIBUTE_NORETURN;
38 extern void fatal_io_error PROTO ((const char *))
39 ATTRIBUTE_NORETURN;
40 extern void pfatal_with_name PROTO ((const char *))
41 ATTRIBUTE_NORETURN;
42 extern void fatal_insn_not_found PROTO ((struct rtx_def *))
43 ATTRIBUTE_NORETURN;
44 extern void fatal_insn PROTO ((const char *, struct rtx_def *))
45 ATTRIBUTE_NORETURN;
46 extern void warning PVPROTO ((const char *, ...))
47 ATTRIBUTE_PRINTF_1;
48 extern void error PVPROTO ((const char *, ...))
49 ATTRIBUTE_PRINTF_1;
50 extern void pedwarn PVPROTO ((const char *, ...))
51 ATTRIBUTE_PRINTF_1;
52 extern void pedwarn_with_file_and_line PVPROTO ((const char *, int,
53 const char *, ...))
54 ATTRIBUTE_PRINTF_3;
55 extern void warning_with_file_and_line PVPROTO ((const char *, int,
56 const char *, ...))
57 ATTRIBUTE_PRINTF_3;
58 extern void error_with_file_and_line PVPROTO ((const char *, int,
59 const char *, ...))
60 ATTRIBUTE_PRINTF_3;
61 extern void sorry PVPROTO ((const char *, ...))
62 ATTRIBUTE_PRINTF_1;
63 extern void really_sorry PVPROTO((const char *, ...))
64 ATTRIBUTE_PRINTF_1 ATTRIBUTE_NORETURN;
65 extern void default_print_error_function PROTO ((const char *));
66 extern void report_error_function PROTO ((const char *));
67
68 extern void rest_of_decl_compilation PROTO ((union tree_node *,
69 const char *, int, int));
70 extern void rest_of_type_compilation PROTO ((union tree_node *, int));
71 extern void rest_of_compilation PROTO ((union tree_node *));
72
73 /* The *_with_decl functions aren't suitable for ATTRIBUTE_PRINTF. */
74 extern void pedwarn_with_decl PVPROTO ((union tree_node *,
75 const char *, ...));
76 extern void warning_with_decl PVPROTO ((union tree_node *,
77 const char *, ...));
78 extern void error_with_decl PVPROTO ((union tree_node *,
79 const char *, ...));
80
81 extern void announce_function PROTO ((union tree_node *));
82
83 extern void error_for_asm PVPROTO((struct rtx_def *,
84 const char *, ...))
85 ATTRIBUTE_PRINTF_2;
86 extern void warning_for_asm PVPROTO((struct rtx_def *,
87 const char *, ...))
88 ATTRIBUTE_PRINTF_2;
89 #if defined (_JBLEN) || defined (setjmp)
90 extern void set_float_handler PROTO((jmp_buf));
91 extern int push_float_handler PROTO((jmp_buf, jmp_buf));
92 extern void pop_float_handler PROTO((int, jmp_buf));
93 #endif
94
95 #ifdef BUFSIZ
96 extern void output_quoted_string PROTO ((FILE *, const char *));
97 extern void output_file_directive PROTO ((FILE *, const char *));
98 #endif
99
100 extern void fancy_abort PROTO ((void)) ATTRIBUTE_NORETURN;
101 extern void do_abort PROTO ((void)) ATTRIBUTE_NORETURN;
102 extern void botch PROTO ((const char *))
103 ATTRIBUTE_NORETURN;
104
105 #endif /* __GCC_TOPLEV_H */