frontend/define.c, ntharg(), #7/15 substitute tail of ntharg() for `break'
This commit is contained in:
parent
e98bfc720f
commit
e93327fdb7
|
|
@ -410,22 +410,23 @@ ntharg(int num, struct pnode *args)
|
||||||
// fact: num >= 1 for all known invocations of ntharg()
|
// fact: num >= 1 for all known invocations of ntharg()
|
||||||
for (;;) {
|
for (;;) {
|
||||||
if (--num <= 0) {
|
if (--num <= 0) {
|
||||||
break;
|
if (args && args->pn_op && (args->pn_op->op_num == PT_OP_COMMA))
|
||||||
|
return args->pn_left;
|
||||||
|
return args;
|
||||||
}
|
}
|
||||||
if (args && args->pn_op && (args->pn_op->op_num != PT_OP_COMMA)) {
|
if (args && args->pn_op && (args->pn_op->op_num != PT_OP_COMMA)) {
|
||||||
if (num <= 1)
|
if (num <= 1)
|
||||||
break;
|
{
|
||||||
|
if (args && args->pn_op && (args->pn_op->op_num == PT_OP_COMMA))
|
||||||
|
return args->pn_left;
|
||||||
|
return args;
|
||||||
|
}
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
if (!args)
|
if (!args)
|
||||||
return NULL;
|
return NULL;
|
||||||
args = args->pn_right;
|
args = args->pn_right;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (args && args->pn_op && (args->pn_op->op_num == PT_OP_COMMA))
|
|
||||||
return args->pn_left;
|
|
||||||
|
|
||||||
return args;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue