proc_error.c 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181
  1. /*+-------------------------------------------------------------------------
  2. proc_error.c - ecu error code handler
  3. D O N O T E D I T B Y H A N D
  4. Created automagically by bperr/bperr.c
  5. Defined functions:
  6. erc_text(erc)
  7. proc_error(erc)
  8. --------------------------------------------------------------------------*/
  9. /*+:EDITS:*/
  10. /*:04-26-2000-11:16-wht@bob-RELEASE 4.42 */
  11. /*:04-14-1999-10:15-auto-creation from ecuerror.h by build_err 1.2 */
  12. #include "ecu.h"
  13. #include "ecuerror.h"
  14. /*+-------------------------------------------------------------------------
  15. erc_text(erc) - error code to text
  16. e.*ALREADY and eProcAttn.* excluded because they are never printed
  17. --------------------------------------------------------------------------*/
  18. char *
  19. erc_text(erc)
  20. int erc;
  21. {
  22. static char errant[54];
  23. switch(erc)
  24. {
  25. case eProcEmpty:
  26. return("empty procedure");
  27. case eConnectFailed:
  28. return("failed to connect");
  29. case eNoSwitches:
  30. return("no switch(es) to command");
  31. case eIllegalCommand:
  32. return("invalid command");
  33. case eNoMemory:
  34. return("no more memory available");
  35. case eSyntaxError:
  36. return("syntax error");
  37. case eMissingIpAddress:
  38. return("missing IP address");
  39. case eBadIpAddress:
  40. return("invalid IP address");
  41. case eIllegalVarNumber:
  42. return("number is invalid or out of range");
  43. case eIllegalVarType:
  44. return("unrecognized variable type");
  45. case eNotInteger:
  46. return("integer expected and not found");
  47. case eCONINT:
  48. return("abort due to interrupt");
  49. case eInvalidFunction:
  50. return("invalid function name");
  51. case eMissingLeftParen:
  52. return("did not find expected left paren");
  53. case eMissingRightParen:
  54. return("did not find expected right paren");
  55. case eCommaExpected:
  56. return("expected comma not found");
  57. case eProcStackTooDeep:
  58. return("procedure stack depth exceeded");
  59. case eInvalidRelOp:
  60. return("invalid relational operator");
  61. case eInvalidIntOp:
  62. return("invalid integer operator");
  63. case eInvalidStrOp:
  64. return("invalid string operator");
  65. case eNotExecutingProc:
  66. return("not executing a procedure");
  67. case eInvalidLabel:
  68. return("invalid label");
  69. case eInternalLogicError:
  70. return("internal logic error ... whoops");
  71. case eEOF:
  72. return("end of file or read error");
  73. case eBufferTooSmall:
  74. return("string too long");
  75. case eNoParameter:
  76. return("expected parameter not found");
  77. case eBadParameter:
  78. return("bad parameter");
  79. case eInvalidHexNumber:
  80. return("invalid hexadecimal digit");
  81. case eInvalidDecNumber:
  82. return("invalid decimal digit");
  83. case eInvalidOctNumber:
  84. return("invalid octal digit");
  85. case eInteractiveCmd:
  86. return("interactive command");
  87. case eNoLineAttached:
  88. return("no line (modem) attached");
  89. case eBadFileNumber:
  90. return("file number out of range");
  91. case eNotImplemented:
  92. return("not implemented");
  93. case eDuplicateMatch:
  94. return("more than one condition matches");
  95. case eColonExpected:
  96. return("expected colon not found");
  97. case eLabelInvalidHere:
  98. return("label not allowed on this statement");
  99. case eNoCloseFrame:
  100. return("missing '}' for '{'");
  101. case eNoFrame:
  102. return("missing command or command");
  103. case eMissingCommand:
  104. return("expected command not found");
  105. case eBreakCommand:
  106. return("'break' outside 'while'");
  107. case eContinueCommand:
  108. return("'continue' outside 'while'");
  109. case eElseCommand:
  110. return("'else' without matching 'if'");
  111. case eInvalidVarName:
  112. return("invalid variable name");
  113. case eNoSuchVariable:
  114. return("variable by this name not defined");
  115. case eInvalidLogicOp:
  116. return("invalid logical operator");
  117. case eExpectRespondFail:
  118. return("expect-respond failed");
  119. case eSwitchesTooLong:
  120. return("switches too long");
  121. case eInvalidStringOp:
  122. return("invalid operator for strings");
  123. case eNoFreeFile:
  124. return("no free ECU file number");
  125. case eRegNoParen:
  126. return("parenthetical groups not supported");
  127. case eRegRange:
  128. return("range endpoint too large");
  129. case eRegBadNum:
  130. return("bad number in regular expression");
  131. case eRegDigit:
  132. return("\"\\digit\" out of range");
  133. case eRegDelim:
  134. return("illegal or missing delimiter");
  135. case eRegNullRE:
  136. return("null expression not allowed");
  137. case eReg2FewOpens:
  138. return("more \\)'s than \\('s in regexp");
  139. case eReg2ManyOpens:
  140. return("more \\('s than \\)'s in regexp");
  141. case eReg2ManyArgs:
  142. return("more than 2 numbers in \\{ \\}");
  143. case eRegBraceExp:
  144. return("} expected after \\");
  145. case eRegBraceRange:
  146. return("first number exceeds second in \\{ \\}");
  147. case eRegBracketImb:
  148. return("[] imbalance");
  149. case eReg2Complex:
  150. return("regular expression too complex");
  151. default:
  152. sprintf(errant,"unknown error %04X",erc);
  153. return(errant);
  154. }
  155. } /* end of erc_text */
  156. /*+-------------------------------------------------------------------------
  157. proc_error(erc) - print error text with newline appended
  158. --------------------------------------------------------------------------*/
  159. void
  160. proc_error(erc)
  161. int erc;
  162. {
  163. pputs(erc_text(erc));
  164. pputs("\n");
  165. } /* end of proc_error */
  166. /* vi: set tabstop=4 shiftwidth=4: */
  167. /* end of proc_error.c */