Extract repeating NODE references as a local variable
This commit is contained in:
parent
37ed86fd3c
commit
a4406bc89a
12
parse.y
12
parse.y
@ -6850,11 +6850,13 @@ assocs : assoc
|
|||||||
assocs = tail;
|
assocs = tail;
|
||||||
}
|
}
|
||||||
else if (tail) {
|
else if (tail) {
|
||||||
if (RNODE_LIST(assocs)->nd_head &&
|
if (RNODE_LIST(assocs)->nd_head) {
|
||||||
!RNODE_LIST(tail)->nd_head && nd_type_p(RNODE_LIST(tail)->nd_next, NODE_LIST) &&
|
NODE *n = RNODE_LIST(tail)->nd_next;
|
||||||
nd_type_p(RNODE_LIST(RNODE_LIST(tail)->nd_next)->nd_head, NODE_HASH)) {
|
if (!RNODE_LIST(tail)->nd_head && nd_type_p(n, NODE_LIST) &&
|
||||||
/* DSTAR */
|
nd_type_p((n = RNODE_LIST(n)->nd_head), NODE_HASH)) {
|
||||||
tail = RNODE_HASH(RNODE_LIST(RNODE_LIST(tail)->nd_next)->nd_head)->nd_head;
|
/* DSTAR */
|
||||||
|
tail = RNODE_HASH(n)->nd_head;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
assocs = list_concat(assocs, tail);
|
assocs = list_concat(assocs, tail);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user