Files
bison/src/complain.h
Akim Demaille 23eb2a692f * src/complain.c (error_message, ERROR_MESSAGE): New.
To factor...
(fatal_at, fatal, warn_at, warn, complain_at, complain): these.
* src/complain.h, src/complain.c (warning_issued): Remove, unused.
2006-07-10 19:36:31 +00:00

60 lines
1.8 KiB
C

/* Declaration for error-reporting function for Bison.
Copyright (C) 2000, 2001, 2002, 2006 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 2, or (at your option) any
later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
USA. */
#ifndef COMPLAIN_H_
# define COMPLAIN_H_ 1
# include "location.h"
# ifdef __cplusplus
extern "C" {
# endif
/** Informative messages, but we proceed. */
void warn (char const *format, ...)
__attribute__ ((__format__ (__printf__, 1, 2)));
void warn_at (location loc, char const *format, ...)
__attribute__ ((__format__ (__printf__, 2, 3)));
/** An error, but we continue and die later. */
void complain (char const *format, ...)
__attribute__ ((__format__ (__printf__, 1, 2)));
void complain_at (location loc, char const *format, ...)
__attribute__ ((__format__ (__printf__, 2, 3)));
/** A fatal error, causing immediate exit. */
void fatal (char const *format, ...)
__attribute__ ((__noreturn__, __format__ (__printf__, 1, 2)));
void fatal_at (location loc, char const *format, ...)
__attribute__ ((__noreturn__, __format__ (__printf__, 2, 3)));
/** Whether an error was reported. */
extern bool complaint_issued;
# ifdef __cplusplus
}
# endif
#endif /* !COMPLAIN_H_ */