]> git.ipfire.org Git - thirdparty/bash.git/blame - error.h
Bash-5.2 patch 26: fix typo when specifying readline's custom color prefix
[thirdparty/bash.git] / error.h
CommitLineData
726f6388
JA
1/* error.h -- External declarations of functions appearing in error.c. */
2
8868edaf 3/* Copyright (C) 1993-2020 Free Software Foundation, Inc.
726f6388
JA
4
5 This file is part of GNU Bash, the Bourne Again SHell.
6
3185942a
JA
7 Bash is free software: you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation, either version 3 of the License, or
10 (at your option) any later version.
726f6388 11
3185942a
JA
12 Bash is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
726f6388 16
3185942a
JA
17 You should have received a copy of the GNU General Public License
18 along with Bash. If not, see <http://www.gnu.org/licenses/>.
19*/
726f6388 20
ccc6cda3
JA
21#if !defined (_ERROR_H_)
22#define _ERROR_H_
23
24#include "stdc.h"
25
726f6388 26/* Get the name of the shell or shell script for an error message. */
8868edaf 27extern char *get_name_for_error PARAMS((void));
726f6388
JA
28
29/* Report an error having to do with FILENAME. */
8868edaf 30extern void file_error PARAMS((const char *));
726f6388
JA
31
32/* Report a programmer's error, and abort. Pass REASON, and ARG1 ... ARG5. */
8868edaf 33extern void programming_error PARAMS((const char *, ...)) __attribute__((__format__ (printf, 1, 2)));
726f6388
JA
34
35/* General error reporting. Pass FORMAT and ARG1 ... ARG5. */
8868edaf 36extern void report_error PARAMS((const char *, ...)) __attribute__((__format__ (printf, 1, 2)));
ccc6cda3
JA
37
38/* Error messages for parts of the parser that don't call report_syntax_error */
8868edaf 39extern void parser_error PARAMS((int, const char *, ...)) __attribute__((__format__ (printf, 2, 3)));
726f6388
JA
40
41/* Report an unrecoverable error and exit. Pass FORMAT and ARG1 ... ARG5. */
8868edaf 42extern void fatal_error PARAMS((const char *, ...)) __attribute__((__format__ (printf, 1, 2)));
ccc6cda3
JA
43
44/* Report a system error, like BSD warn(3). */
8868edaf 45extern void sys_error PARAMS((const char *, ...)) __attribute__((__format__ (printf, 1, 2)));
ccc6cda3
JA
46
47/* Report an internal error. */
8868edaf 48extern void internal_error PARAMS((const char *, ...)) __attribute__((__format__ (printf, 1, 2)));
ccc6cda3 49
cce855bc 50/* Report an internal warning. */
8868edaf 51extern void internal_warning PARAMS((const char *, ...)) __attribute__((__format__ (printf, 1, 2)));
cce855bc 52
74091dd4
CR
53/* Report an internal warning for debugging purposes. */
54extern void internal_debug PARAMS((const char *, ...)) __attribute__((__format__ (printf, 1, 2)));
55
a0c0a00f 56/* Report an internal informational notice. */
8868edaf 57extern void internal_inform PARAMS((const char *, ...)) __attribute__((__format__ (printf, 1, 2)));
a0c0a00f 58
3185942a 59/* Debugging functions, not enabled in released version. */
8868edaf
CR
60extern char *strescape PARAMS((const char *));
61extern void itrace PARAMS((const char *, ...)) __attribute__ ((__format__ (printf, 1, 2)));
62extern void trace PARAMS((const char *, ...)) __attribute__ ((__format__ (printf, 1, 2)));
7117c2d2 63
b72432fd 64/* Report an error having to do with command parsing or execution. */
8868edaf 65extern void command_error PARAMS((const char *, int, int, int));
b72432fd 66
8868edaf 67extern char *command_errstr PARAMS((int));
b72432fd 68
ac50fbac 69/* Specific error message functions that eventually call report_error or
7117c2d2
JA
70 internal_error. */
71
8868edaf
CR
72extern void err_badarraysub PARAMS((const char *));
73extern void err_unboundvar PARAMS((const char *));
74extern void err_readonly PARAMS((const char *));
f73dda09 75
74091dd4
CR
76#ifdef DEBUG
77# define INTERNAL_DEBUG(x) internal_debug x
78#else
79# define INTERNAL_DEBUG(x)
80#endif
81
ccc6cda3 82#endif /* !_ERROR_H_ */