29 char *nm1 = (
char*) NULL;
30 char *nm2 = (
char*) NULL;
40 (void) fprintf(
STDERR,
" node or variable <%s> does not exist\n",
Declare_List[in].name);
50 (void) fprintf(
STDERR,
" according to declaration, variable <%s> cannot be updated,\n\n",
Var_List[l].name2);
52 (void) fprintf(
STDERR,
" this variable, aliased as <%s>, is updated\n",
Var_List[l].name1);
54 (void) fprintf(
STDERR,
" this variable is updated\n");
66 (void) fprintf(
STDERR,
" according to declaration, node <%s> should be a 'dc' or a 'const' node,\n",
Node_List[k].name2);
68 (void) fprintf(
STDERR,
" this node, aliased as <%s>, is defined\n\n",
Node_List[k].name1);
70 (void) fprintf(
STDERR,
" this node is defined\n\n");
85 if (0 != strcmp(nm1, nm2)) {
86 (void) fprintf(
STDERR,
" node <%s>, aliased as <%s>, cannot be declared as a string\n", nm2, nm1);
88 (void) fprintf(
STDERR,
" node <%s> cannot be declared as a string\n", nm2);
95 if (0 != strcmp(nm1, nm2)) {
96 (void) fprintf(
STDERR,
" node <%s>, aliased as <%s>, was already declared as analog\n", nm2, nm1);
98 (void) fprintf(
STDERR,
" node <%s> was already declared as analog\n", nm2);
106 if (0 != strcmp(nm1, nm2)) {
107 (void) fprintf(
STDERR,
" node <%s>, aliased as <%s>, was already declared as digital\n", nm2, nm1);
109 (void) fprintf(
STDERR,
" node <%s> was already declared as digital\n", nm2);
125 if (0 != strcmp(nm1, nm2)) {
126 (void) fprintf(
STDERR,
" variable <%s>, aliased as <%s>, was already declared as digital\n", nm2, nm1);
128 (void) fprintf(
STDERR,
" variable <%s> was already declared as digital\n", nm2);
135 if (0 != strcmp(nm1, nm2)) {
136 (void) fprintf(
STDERR,
" variable <%s>, aliased as <%s>, was already declared as analog\n", nm2, nm1);
138 (void) fprintf(
STDERR,
" variable <%s> was already declared as analog\n", nm2);
145 if (0 != strcmp(nm1, nm2)) {
146 (void) fprintf(
STDERR,
" variable <%s>, aliased as <%s>, was already declared as a string\n", nm2, nm1);
148 (void) fprintf(
STDERR,
" variable <%s> was already declared as a string\n", nm2);
155 if (0 != strcmp(nm1, nm2)) {
156 (void) fprintf(
STDERR,
" according to a declaration, variable <%s>, aliased as <%s>, must be analog\n", nm2, nm1);
158 (void) fprintf(
STDERR,
" according to a declaration, variable <%s> must be analog\n", nm2);
166 if (0 != strcmp(nm1, nm2)) {
167 (void) fprintf(
STDERR,
" according to a declaration, variable <%s>, aliased as <%s>, must be digital\n", nm2, nm1);
169 (void) fprintf(
STDERR,
" according to a declaration, variable <%s> must be digital\n", nm2);
177 if (0 != strcmp(nm1, nm2)) {
178 (void) fprintf(
STDERR,
" according to a declaration, variable <%s>, aliased as <%s>, must be a string\n", nm2, nm1);
180 (void) fprintf(
STDERR,
" according to a declaration, variable <%s> must be a string\n", nm2);
195 (void) fprintf(
STDERR,
" parameter corresponding to declaration #%ld",
Declare_List[in].number);
196 (void) fprintf(
STDERR,
" is not an analog number, (value: <%s>)\n", nm1);
202 (void) fprintf(
STDERR,
" parameter corresponding to declaration #%ld",
Declare_List[in].number);
203 (void) fprintf(
STDERR,
" is not a strict digital number (value: <%s>)\n", nm1);
209 (void) fprintf(
STDERR,
" parameter corresponding to declaration #%ld",
Declare_List[in].number);
210 (void) fprintf(
STDERR,
" is not a string constant (value: <%s>)\n", nm1);
231 char sgn[2] = {
'\0'};
233 char *str = (
char*) NULL;
262 (void) fprintf(
STDERR,
" according to a declaration, the types of <%s>", tok);
269 (void) fprintf(
STDERR,
" and <%s>", tok);
271 (void) fprintf(
STDERR,
", <%s>", tok);
274 (void) fprintf(
STDERR,
" must be the same\n");
void declaration_type_B(void)
void declaration_type_A(void)
void print_location(const unsigned long *mlin, const unsigned long *mfil)
void print_error_location(const char *type, const unsigned long *mlin, const unsigned long *mfil)
long constant_type(char *identifier)
long get_type(char *identifier)
long update_id(const char *identifier, long num)
long node_id(const char *identifier)
long var_id(const char *identifier)
void process_node_error(const char *tok1)
void process_variable_error(const char *tok1)
EXTERN VAR_TYPE Var_List[2047L]
EXTERN DECLARE_COMMON_TYPE Declare_Common_List[255L]
EXTERN DECLARE_TYPE Declare_List[1023L]
EXTERN NODE_TYPE Node_List[4095L]
EXTERN long Num_Declare_Commons
#define DIGITAL_DATA_TYPE
EXTERN UPDATE_TYPE Update_List[2047L]
char * get_sign_and_token(char *str, char *sgn, char *tok)