This is called "abstract-declarator" in K&R. [1] I am not sure what "m_" stands for, but the name is clear enough without it. No functional changes are intended. [1] https://cs.wmich.edu/~gupta/teaching/cs4850/sumII06/The%20syntax%20of%20C%20in%20Backus-Naur%20form.htm
Showing the changes to scripts (1 of 1 file). Show all
Unified · Split
| @@ -367,17 +367,17 @@ parameter_declaration_list: · 366 unmodified lines | |||
| 367 | ; | 367 | ; |
| 368 | 368 | ||
| 369 | parameter_declaration: | 369 | parameter_declaration: |
| 370 | decl_specifier_seq m_abstract_declarator | 370 | decl_specifier_seq abstract_declarator |
| 371 | { $$ = $2 ? $2 : $1; } | 371 | { $$ = $2 ? $2 : $1; } |
| 372 | ; | 372 | ; |
| 373 | 373 | ||
| 374 | m_abstract_declarator: | 374 | abstract_declarator: |
| 375 | ptr_operator m_abstract_declarator | 375 | ptr_operator abstract_declarator |
| 376 | { $$ = $2 ? $2 : $1; } | 376 | { $$ = $2 ? $2 : $1; } |
| 377 | | direct_m_abstract_declarator | 377 | | direct_abstract_declarator |
| 378 | ; | 378 | ; |
| 379 | 379 | ||
| 380 | direct_m_abstract_declarator: | 380 | direct_abstract_declarator: |
| 381 | /* empty */ { $$ = NULL; } | 381 | /* empty */ { $$ = NULL; } |
| 382 | | IDENT | 382 | | IDENT |
| 383 | { /* For version 2 checksums, we don't want to remember | 383 | { /* For version 2 checksums, we don't want to remember |
| @@ -391,13 +391,13 @@ direct_m_abstract_declarator: · 7 unmodified lines | |||
| 391 | { remove_node($1); | 391 | { remove_node($1); |
| 392 | $$ = $1; | 392 | $$ = $1; |
| 393 | } | 393 | } |
| 394 | | direct_m_abstract_declarator '(' parameter_declaration_clause ')' | 394 | | direct_abstract_declarator '(' parameter_declaration_clause ')' |
| 395 | { $$ = $4; } | 395 | { $$ = $4; } |
| 396 | | direct_m_abstract_declarator '(' error ')' | 396 | | direct_abstract_declarator '(' error ')' |
| 397 | { $$ = $4; } | 397 | { $$ = $4; } |
| 398 | | direct_m_abstract_declarator BRACKET_PHRASE | 398 | | direct_abstract_declarator BRACKET_PHRASE |
| 399 | { $$ = $2; } | 399 | { $$ = $2; } |
| 400 | | '(' m_abstract_declarator ')' | 400 | | '(' abstract_declarator ')' |
| 401 | { $$ = $3; } | 401 | { $$ = $3; } |
| 402 | | '(' error ')' | 402 | | '(' error ')' |
| 403 | { $$ = $3; } | 403 | { $$ = $3; } |