home *** CD-ROM | disk | FTP | other *** search
/ Club Amiga de Montreal - CAM / CAM_CD_1.iso / files / 549b.lha / M2P_v1.0_sources / source.lzh / Err.def < prev    next >
Text File  |  1991-08-10  |  3KB  |  58 lines

  1. (*======================================================================*)
  2. (*              Oberon Compiler support routines -- Errors              *)
  3. (*======================================================================*)
  4. (*  Version:  1.00              Author:   Dennis Brueni                 *)
  5. (*  Date:     04-29-91          Changes:  Original                      *)
  6. (*======================================================================*)
  7. (*  This module contains all the error messages which can be reported   *)
  8. (*  due to problems discovered by the compiler while compiling source.  *)
  9. (*======================================================================*)
  10.  
  11. DEFINITION MODULE Err;
  12.  
  13. (*----------------------------------------------------------------------*)
  14. (*  An enumerated type for all error message names.                     *)
  15. (*----------------------------------------------------------------------*)
  16.  
  17. TYPE Names = (  TokTooLong, StrNotEnded, ComNotEnded, IFail,
  18.                 MissStr, MissMacRP, MissMacArg, IDNotMacro,
  19.                 BadPPStmt, FlagReDefined, FlagUnDefined,
  20.                 DefXPctdID, UnDefXPctdID, UnBalParens, IllFactor,
  21.                 MissAtElse, MissAtEnd, MissThen, MissIfEnd,
  22.                 MacXPctdID, TooMany, ArgNotEnded, MacNotEnded
  23.              );
  24.                
  25. CONST IOError    = 05;          (* fatal error return codes *)
  26.       NoMemory   = 10;
  27.       Errors     = 15;
  28.       BadParams  = 20;
  29.  
  30. (*----------------------------------------------------------------------*)
  31. (* MESSAGE      Handles the print and formatting of all those friendly  *)
  32. (*              error messages we all so like getting.                  *)
  33. (*----------------------------------------------------------------------*)
  34.  
  35. PROCEDURE Message(Err: Names);
  36.  
  37. (*----------------------------------------------------------------------*)
  38. (* FATAL        Handles Fatal errors, which there is no return from.    *)
  39. (*              Sets the CLI-Return code appropriately if possible.     *)
  40. (*              There's no returning from this one.                     *)
  41. (*----------------------------------------------------------------------*)
  42.  
  43. PROCEDURE Fatal(Err: INTEGER);
  44.  
  45. (*----------------------------------------------------------------------*)
  46. (*  How many errors were there?                                         *)
  47. (*----------------------------------------------------------------------*)
  48.  
  49. VAR ErrorCount: CARDINAL;
  50.     LineNum:    CARDINAL;
  51.  
  52. (*----------------------------------------------------------------------*)
  53. (* LASTMESSAGE  Reports how many errors there were reported.            *)
  54. (*----------------------------------------------------------------------*)
  55.  
  56. PROCEDURE LastMessage;
  57.  
  58. END Err.