home *** CD-ROM | disk | FTP | other *** search
/ Geek Gadgets 1 / ADE-1.bin / ade-dist / octave-1.1.1p1-src.tgz / tar.out / fsf / octave / src / error.h < prev    next >
C/C++ Source or Header  |  1996-09-28  |  2KB  |  59 lines

  1. // error.h                                              -*- C++ -*-
  2. /*
  3.  
  4. Copyright (C) 1992, 1993, 1994, 1995 John W. Eaton
  5.  
  6. This file is part of Octave.
  7.  
  8. Octave is free software; you can redistribute it and/or modify it
  9. under the terms of the GNU General Public License as published by the
  10. Free Software Foundation; either version 2, or (at your option) any
  11. later version.
  12.  
  13. Octave is distributed in the hope that it will be useful, but WITHOUT
  14. ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  15. FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  16. for more details.
  17.  
  18. You should have received a copy of the GNU General Public License
  19. along with Octave; see the file COPYING.  If not, write to the Free
  20. Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
  21.  
  22. */
  23.  
  24. #if !defined (octave_error_h)
  25. #define octave_error_h 1
  26.  
  27. #define panic_impossible() \
  28.   panic ("impossible state reached in file `%s' at line %d", \
  29.      __FILE__, __LINE__)
  30.  
  31. // Tell g++ that panic doesn't return;
  32.  
  33. #ifdef __GNUG__
  34. typedef void v_fcn_cpc_x (const char *, ...);
  35. volatile v_fcn_cpc_x panic;
  36. #endif
  37.  
  38. extern void message (const char *name, const char *fmt, ...);
  39. extern void usage (const char *fmt, ...);
  40. extern void warning (const char *fmt, ...);
  41. extern void error (const char *fmt, ...);
  42. extern void parse_error (const char *fmt, ...);
  43. extern void panic (const char *fmt, ...);
  44.  
  45. // Current error state.
  46. extern int error_state;
  47.  
  48. // XXX FIXME XXX
  49. extern int suppress_octave_error_messages;
  50.  
  51. #endif
  52.  
  53. /*
  54. ;;; Local Variables: ***
  55. ;;; mode: C++ ***
  56. ;;; page-delimiter: "^/\\*" ***
  57. ;;; End: ***
  58. */
  59.