]>
Commit | Line | Data |
---|---|---|
1 | /*\r | |
2 | * errsupport.c -- error support code for SORCERER output\r | |
3 | *\r | |
4 | * Define your own or compile and link this in.\r | |
5 | *\r | |
6 | * Terence Parr\r | |
7 | * U of MN, AHPCRC\r | |
8 | * February 1994\r | |
9 | */\r | |
10 | #include "sorcerer.h"\r | |
11 | \r | |
12 | void\r | |
13 | #ifdef __USE_PROTOS\r | |
14 | mismatched_range( STreeParser *_parser, int looking_for, int upper_token, SORAST *found )\r | |
15 | #else\r | |
16 | mismatched_range( _parser, looking_for, upper_token, found )\r | |
17 | int looking_for;\r | |
18 | int upper_token;\r | |
19 | SORAST *found;\r | |
20 | STreeParser *_parser;\r | |
21 | #endif\r | |
22 | {\r | |
23 | if ( found!=NULL ) {\r | |
24 | fprintf(stderr,\r | |
25 | "parse error: expected token range %d..%d found token %d\n",\r | |
26 | looking_for, upper_token,\r | |
27 | found->token);\r | |
28 | }\r | |
29 | else {\r | |
30 | fprintf(stderr,\r | |
31 | "parse error: expected token range %d..%d found NULL tree\n",\r | |
32 | looking_for, upper_token);\r | |
33 | }\r | |
34 | }\r | |
35 | \r | |
36 | void\r | |
37 | #ifdef __USE_PROTOS\r | |
38 | missing_wildcard(STreeParser *_parser)\r | |
39 | #else\r | |
40 | missing_wildcard(_parser)\r | |
41 | STreeParser *_parser;\r | |
42 | #endif\r | |
43 | {\r | |
44 | fprintf(stderr, "parse error: expected any token/tree found found NULL tree\n");\r | |
45 | }\r | |
46 | \r | |
47 | void\r | |
48 | #ifdef __USE_PROTOS\r | |
49 | mismatched_token( STreeParser *_parser, int looking_for, SORAST *found )\r | |
50 | #else\r | |
51 | mismatched_token( _parser, looking_for, found )\r | |
52 | int looking_for;\r | |
53 | SORAST *found;\r | |
54 | STreeParser *_parser;\r | |
55 | #endif\r | |
56 | {\r | |
57 | if ( found!=NULL ) {\r | |
58 | fprintf(stderr,\r | |
59 | "parse error: expected token %d found token %d\n",\r | |
60 | looking_for,\r | |
61 | found->token);\r | |
62 | }\r | |
63 | else {\r | |
64 | fprintf(stderr,\r | |
65 | "parse error: expected token %d found NULL tree\n",\r | |
66 | looking_for);\r | |
67 | }\r | |
68 | }\r | |
69 | \r | |
70 | void\r | |
71 | #ifdef __USE_PROTOS\r | |
72 | no_viable_alt( STreeParser *_parser, char *rulename, SORAST *root )\r | |
73 | #else\r | |
74 | no_viable_alt( _parser, rulename, root )\r | |
75 | char *rulename;\r | |
76 | SORAST *root;\r | |
77 | STreeParser *_parser;\r | |
78 | #endif\r | |
79 | {\r | |
80 | if ( root==NULL )\r | |
81 | fprintf(stderr,\r | |
82 | "parse error: in rule %s, no viable alternative for NULL tree\n",\r | |
83 | rulename);\r | |
84 | else\r | |
85 | fprintf(stderr,\r | |
86 | "parse error: in rule %s, no viable alternative for tree\n",\r | |
87 | rulename);\r | |
88 | }\r | |
89 | \r | |
90 | void\r | |
91 | #ifdef __USE_PROTOS\r | |
92 | sorcerer_panic(char *err)\r | |
93 | #else\r | |
94 | sorcerer_panic(err)\r | |
95 | char *err;\r | |
96 | #endif\r | |
97 | {\r | |
98 | fprintf(stderr, "panic: %s\n", err);\r | |
99 | exit(-1);\r | |
100 | }\r |