version 1.107, 2019/04/12 08:48:16 |
version 1.108, 2019/04/12 09:39:21 |
Line 641 pnode_printprologue(struct format *f, struct ptree *tr |
|
Line 641 pnode_printprologue(struct format *f, struct ptree *tr |
|
static void |
static void |
pnode_printvarlistentry(struct format *f, struct pnode *n) |
pnode_printvarlistentry(struct format *f, struct pnode *n) |
{ |
{ |
struct pnode *nc; |
struct pnode *nc, *nn; |
int first = 1; |
int first = 1; |
|
|
macro_close(f); |
|
macro_open(f, "It"); |
macro_open(f, "It"); |
f->flags |= FMT_IMPL; |
f->flags |= FMT_IMPL; |
TAILQ_FOREACH(nc, &n->childq, child) { |
TAILQ_FOREACH_SAFE(nc, &n->childq, child, nn) { |
if (nc->node != NODE_TERM && nc->node != NODE_GLOSSTERM) |
if (nc->node != NODE_TERM && nc->node != NODE_GLOSSTERM) |
continue; |
continue; |
if ( ! first) |
if (first == 0) { |
macro_addarg(f, ",", 0); |
switch (f->linestate) { |
|
case LINE_NEW: |
|
break; |
|
case LINE_TEXT: |
|
print_text(f, ",", 0); |
|
break; |
|
case LINE_MACRO: |
|
macro_addarg(f, ",", 0); |
|
break; |
|
} |
|
} |
pnode_print(f, nc); |
pnode_print(f, nc); |
|
pnode_unlink(nc); |
first = 0; |
first = 0; |
} |
} |
macro_close(f); |
macro_close(f); |
TAILQ_FOREACH(nc, &n->childq, child) |
while ((nc = TAILQ_FIRST(&n->childq)) != NULL) { |
if (nc->node != NODE_TERM && nc->node != NODE_GLOSSTERM) |
pnode_print(f, nc); |
pnode_print(f, nc); |
pnode_unlink(nc); |
pnode_unlinksub(n); |
} |
|
macro_close(f); |
} |
} |
|
|
static void |
static void |