1218885Sdim// -*- C++ -*- 2218885Sdim/* Copyright (C) 1989, 1990, 1991, 1992, 2003, 2004 3218885Sdim Free Software Foundation, Inc. 4218885Sdim Written by James Clark (jjc@jclark.com) 5218885Sdim 6218885SdimThis file is part of groff. 7218885Sdim 8218885Sdimgroff is free software; you can redistribute it and/or modify it under 9218885Sdimthe terms of the GNU General Public License as published by the Free 10218885SdimSoftware Foundation; either version 2, or (at your option) any later 11218885Sdimversion. 12218885Sdim 13218885Sdimgroff is distributed in the hope that it will be useful, but WITHOUT ANY 14249423SdimWARRANTY; without even the implied warranty of MERCHANTABILITY or 15249423SdimFITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 16218885Sdimfor more details. 17218885Sdim 18218885SdimYou should have received a copy of the GNU General Public License along 19218885Sdimwith groff; see the file COPYING. If not, write to the Free Software 20218885SdimFoundation, 51 Franklin St - Fifth Floor, Boston, MA 02110-1301, USA. */ 21218885Sdim 22218885Sdimextern void fatal_with_file_and_line(const char *filename, int lineno, 23218885Sdim const char *format, 24218885Sdim const errarg &arg1 = empty_errarg, 25218885Sdim const errarg &arg2 = empty_errarg, 26218885Sdim const errarg &arg3 = empty_errarg); 27218885Sdim 28218885Sdimextern void error_with_file_and_line(const char *filename, int lineno, 29218885Sdim const char *format, 30218885Sdim const errarg &arg1 = empty_errarg, 31218885Sdim const errarg &arg2 = empty_errarg, 32218885Sdim const errarg &arg3 = empty_errarg); 33218885Sdim 34218885Sdimextern void warning_with_file_and_line(const char *filename, int lineno, 35218885Sdim const char *format, 36218885Sdim const errarg &arg1 = empty_errarg, 37218885Sdim const errarg &arg2 = empty_errarg, 38218885Sdim const errarg &arg3 = empty_errarg); 39218885Sdim 40218885Sdimextern void fatal(const char *, 41218885Sdim const errarg &arg1 = empty_errarg, 42218885Sdim const errarg &arg2 = empty_errarg, 43218885Sdim const errarg &arg3 = empty_errarg); 44218885Sdim 45218885Sdimextern void error(const char *, 46218885Sdim const errarg &arg1 = empty_errarg, 47218885Sdim const errarg &arg2 = empty_errarg, 48218885Sdim const errarg &arg3 = empty_errarg); 49218885Sdim 50263508Sdimextern void warning(const char *, 51218885Sdim const errarg &arg1 = empty_errarg, 52263508Sdim const errarg &arg2 = empty_errarg, 53263508Sdim const errarg &arg3 = empty_errarg); 54218885Sdim 55218885Sdim 56218885Sdimextern "C" const char *program_name; 57218885Sdimextern int current_lineno; 58218885Sdimextern const char *current_filename; 59218885Sdimextern const char *current_source_filename; 60218885Sdim