home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / intercal.zip / lib / lose.h < prev    next >
C/C++ Source or Header  |  1996-06-19  |  5KB  |  128 lines

  1. /* lose.h --- error message strings */
  2.  
  3. /*
  4.  * Note: these error message texts, with one exception, are direct from 
  5.  * the Princeton compiler (INTERCAL-72) sources (transmitted by Don Woods).
  6.  * The one exception is E632, which in INTERCAL-72 had the error message
  7.  *    PROGRAM ATTEMPTED TO EXIT WITHOUT ERROR MESSAGE
  8.  * ESR's "THE NEXT STACK HAS RUPTURED!..." has been retained on the grounds
  9.  * that it is more obscure and much funnier.  For context, find a copy of
  10.  * Joe Haldeman's SF short story "A !Tangled Web", first published in 
  11.  * Analog magazine sometime in 1983 and later anthologized in the author's
  12.  * "Infinite Dreams" (Ace 1985).
  13.  */
  14. /* An undecodable statement has been encountered in the course of execution."*/
  15. #define E000 "000 %s\n\
  16.     ON THE WAY TO %d\n"
  17. /* An expression contains a syntax error. */
  18. #define E017 "017 DO YOU EXPECT ME TO FIGURE THIS OUT?\n\
  19.     ON THE WAY TO %d\n"
  20. /* Improper use has been made of statement identifiers. */
  21. #define E079 "079 PROGRAMMER IS INSUFFICIENTLY POLITE\n\
  22.     ON THE WAY TO %d\n"
  23. /* Improper use has been made of statement identifiers. */
  24. #define E099 "099 PROGRAMMER IS OVERLY POLITE\n\
  25.     ON THE WAY TO %d\n"
  26. /* Program has attempted 80 levels of NEXTing */
  27. #define E123 "123 PROGRAM HAS DISAPPEARED INTO THE BLACK LAGOON\n\
  28.     ON THE WAY TO %d\n"
  29. /* Program has attempted to transfer to a non-existent line label */
  30. #define E129 "129 PROGRAM HAS GOTTEN LOST\n\
  31.     ON THE WAY TO WHO KNOWS WHERE\n"
  32. /* An ABSTAIN or REINSTATE statement references a non-existent line label */
  33. #define E139 "139 I WASN'T PLANNING TO GO THERE ANYWAY\n\
  34.     ON THE WAY TO %d\n"
  35. /* A line label has been multiply defined. */
  36. #define E182 "182 YOU MUST LIKE THIS LABEL A LOT!\n\
  37.     ON THE WAY TO %d\n"
  38. /* An invalid line label has been encountered. */
  39. #define E197 "197 SO!  65535 LABELS AREN'T ENOUGH FOR YOU?\n\
  40.     ON THE WAY TO %d\n"
  41. /* An expression involves an unidentified variable. */
  42. #define E200 "200 NOTHING VENTURED, NOTHING GAINED\n\
  43.     ON THE WAY TO %d\n"
  44. /* An attempt has been made to give an array a dimension of zero. */
  45. #define E240 "240 ERROR HANDLER PRINTED SNIDE REMARK\n\
  46.     ON THE WAY TO %d\n"
  47. /* Invalid dimensioning information was supplied
  48.  * in defining or using an array. */
  49. #define E241 "241 VARIABLES MAY NOT BE STORED IN WEST HYPERSPACE\n\
  50.     ON THE WAY TO %d\n"
  51. /* A 32-bit value has been assigned to a 16-bit variable. */
  52. #define E275 "275 DON'T BYTE OFF MORE THAN YOU CAN CHEW\n\
  53.     ON THE WAY TO %d\n"
  54. /* A retrieval has been attempted for an unSTASHed value. */
  55. #define E436 "436 THROW STICK BEFORE RETRIEVING!\n\
  56.     ON THE WAY TO %d\n"
  57. /* A WRITE IN statement or interleave ($) operation
  58.  * has produced value requiring over 32 bits to represent. */
  59. #define E533 "533 YOU WANT MAYBE WE SHOULD IMPLEMENT 64-BIT VARIABLES?\n\
  60.     ON THE WAY TO %d\n"
  61. /* Insufficient data. (raised by reading past EOF) */
  62. #define E562 "562 I DO NOT COMPUTE\n\
  63.     ON THE WAY TO %d\n"
  64. /* Input data is invalid. */
  65. #define E579 "579 WHAT BASE AND/OR LANGUAGE INCLUDES %s?\n\
  66.     ON THE WAY TO %d\n"
  67. /* The expression of a RESUME statement evaluated to #0. */
  68. #define E621 "621 ERROR TYPE 621 ENCOUNTERED\n\
  69.     ON THE WAY TO %d\n"
  70. /* Program execution terminated via a RESUME statement instead of GIVE UP. */
  71. #define E632 "632 THE NEXT STACK RUPTURES.  ALL DIE.  OH, THE EMBARRASSMENT!\n\
  72.     ON THE WAY TO %d\n"
  73. /* Execution has passed beyond the last statement of the program. */
  74. #define E633 "633 PROGRAM FELL OFF THE EDGE\n\
  75.     ON THE WAY TO THE NEW WORLD\n"
  76. /* A compiler error has occurred (see section 8.1). */
  77. #define E774 "774 RANDOM COMPILER BUG\n\
  78.     ON THE WAY TO %d\n"
  79. /* An unexplainable compiler error has occurred (see J. Lyon or D. Woods). */
  80. #define E778 "778 UNEXPLAINED COMPILER BUG\n\
  81.     ON THE WAY TO %d\n"
  82.  
  83. /*
  84.  * These errors are unique to C-INTERCAL.
  85.  */
  86. /* You tried to use a C-INTERCAL extension with the `traditional' flag on */
  87. #define E111 "111 COMMUNIST PLOT DETECTED, COMPILER IS SUICIDING\n\
  88.     ON THE WAY TO %d\n"
  89. /* Cannot find the magically included system library */
  90. #define E127 "127 SAYING 'ABRACADABRA' WITHOUT A MAGIC WAND WON'T DO YOU ANY GOOD\n\
  91.         ON THE WAY TO THE CLOSET\n"
  92. /* Out of stash space */
  93. #define E222 "222 BUMMER, DUDE!\n\
  94.     ON THE WAY TO %d\n"
  95. /* Too many variables. */
  96. #define E333 "333 YOU CAN'T HAVE EVERYTHING, WHERE WOULD YOU PUT IT?\n\
  97.     ON THE WAY TO %d\n"
  98. /* A COME FROM statement references a non-existent line label. */
  99. #define E444 "444 IT CAME FROM BEYOND SPACE\n\
  100.     ON THE WAY TO %d\n"
  101. /* More than one COME FROM references the same label. */
  102. #define E555 "555 FLOW DIAGRAM IS EXCESSIVELY CONNECTED\n\
  103.     ON THE WAY TO %d\n"
  104. /* Too many source lines. */
  105. #define E666 "666 COMPILER HAS INDIGESTION\n\
  106.     ON THE WAY TO %d\n"
  107. /* No such source file. */
  108. #define E777 "777 A SOURCE IS A SOURCE, OF COURSE, OF COURSE\n\
  109.     ON THE WAY TO %d\n"
  110. /* Can't open C output file */
  111. #define E888 "888 I HAVE NO FILE AND I MUST SCREAM\n\
  112.     ON THE WAY TO %d\n"
  113. /* Can't open C skeleton file. */
  114. #define E999 "999 NO SKELETON IN MY CLOSET, WOE IS ME!\n\
  115.     ON THE WAY TO %d\n"
  116. /* Source file name with invalid extension (use .i or .[3-7]i). */
  117. #define E998 "998 EXCUSE ME,\n\
  118.     YOU MUST HAVE ME CONFUSED WITH SOME OTHER COMPILER\n"
  119. /* Illegal possession of a controlled unary operator. */
  120. #define E997 "997 ILLEGAL POSSESSION OF A CONTROLLED UNARY OPERATOR.\n\
  121.     ON THE WAY TO %d\n"
  122.  
  123. extern int lineno;
  124.  
  125. extern void lose(char *m, int n, char *s);
  126.  
  127. /* lose.h ends here */
  128.