209 |
{ |
{ |
210 |
symbol_list_t *list; |
symbol_list_t *list; |
211 |
for (list = $4; list; list = list->next) |
for (list = $4; list; list = list->next) |
212 |
symbol_destructor_set (list->sym, list->location, $3); |
symbol_destructor_set (list->sym, $3, @3); |
213 |
symbol_list_free ($4); |
symbol_list_free ($4); |
214 |
current_braced_code = action_braced_code; |
current_braced_code = action_braced_code; |
215 |
} |
} |
240 |
{ |
{ |
241 |
symbol_list_t *list; |
symbol_list_t *list; |
242 |
for (list = $3; list; list = list->next) |
for (list = $3; list; list = list->next) |
243 |
symbol_type_set (list->sym, list->location, $2); |
symbol_type_set (list->sym, $2, @2); |
244 |
symbol_list_free ($3); |
symbol_list_free ($3); |
245 |
} |
} |
246 |
; |
; |
252 |
++current_prec; |
++current_prec; |
253 |
for (list = $3; list; list = list->next) |
for (list = $3; list; list = list->next) |
254 |
{ |
{ |
255 |
symbol_type_set (list->sym, list->location, current_type); |
symbol_type_set (list->sym, current_type, @2); |
256 |
symbol_precedence_set (list->sym, list->location, current_prec, $1); |
symbol_precedence_set (list->sym, current_prec, $1, @1); |
257 |
} |
} |
258 |
symbol_list_free ($3); |
symbol_list_free ($3); |
259 |
current_type = NULL; |
current_type = NULL; |
287 |
| ID |
| ID |
288 |
{ |
{ |
289 |
symbol_class_set ($1, current_class, @1); |
symbol_class_set ($1, current_class, @1); |
290 |
symbol_type_set ($1, @1, current_type); |
symbol_type_set ($1, current_type, @1); |
291 |
} |
} |
292 |
| ID INT |
| ID INT |
293 |
{ |
{ |
294 |
symbol_class_set ($1, current_class, @1); |
symbol_class_set ($1, current_class, @1); |
295 |
symbol_type_set ($1, @1, current_type); |
symbol_type_set ($1, current_type, @1); |
296 |
symbol_user_token_number_set ($1, $2, @2); |
symbol_user_token_number_set ($1, $2, @2); |
297 |
} |
} |
298 |
| ID string_as_id |
| ID string_as_id |
299 |
{ |
{ |
300 |
symbol_class_set ($1, current_class, @1); |
symbol_class_set ($1, current_class, @1); |
301 |
symbol_type_set ($1, @1, current_type); |
symbol_type_set ($1, current_type, @1); |
302 |
symbol_make_alias ($1, $2); |
symbol_make_alias ($1, $2); |
303 |
} |
} |
304 |
| ID INT string_as_id |
| ID INT string_as_id |
305 |
{ |
{ |
306 |
symbol_class_set ($1, current_class, @1); |
symbol_class_set ($1, current_class, @1); |
307 |
symbol_type_set ($1, @1, current_type); |
symbol_type_set ($1, current_type, @1); |
308 |
symbol_user_token_number_set ($1, $2, @2); |
symbol_user_token_number_set ($1, $2, @2); |
309 |
symbol_make_alias ($1, $3); |
symbol_make_alias ($1, $3); |
310 |
} |
} |