summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mdoc.c1
-rw-r--r--mdoc.h1
-rw-r--r--mdoc_html.c9
-rw-r--r--mdoc_macro.c8
-rw-r--r--mdoc_term.c9
-rw-r--r--tree.c5
6 files changed, 8 insertions, 25 deletions
diff --git a/mdoc.c b/mdoc.c
index 9e7a1482..8b589208 100644
--- a/mdoc.c
+++ b/mdoc.c
@@ -363,7 +363,6 @@ node_alloc(struct mdoc *mdoc, int line, int pos,
p->sec = mdoc->lastsec;
p->line = line;
p->pos = pos;
- p->lastline = line;
p->tok = tok;
p->type = type;
diff --git a/mdoc.h b/mdoc.h
index 33ec903b..e123a902 100644
--- a/mdoc.h
+++ b/mdoc.h
@@ -352,7 +352,6 @@ struct mdoc_node {
int nchild; /* number children */
int line; /* parse line */
int pos; /* parse column */
- int lastline; /* the node ends on this line */
enum mdoct tok; /* tok or MDOC__MAX if none */
int flags;
#define MDOC_VALID (1 << 0) /* has been validated */
diff --git a/mdoc_html.c b/mdoc_html.c
index 8a52855e..82aa5d95 100644
--- a/mdoc_html.c
+++ b/mdoc_html.c
@@ -436,12 +436,9 @@ print_mdoc_node(MDOC_ARGS)
break;
}
- if (HTML_KEEP & h->flags) {
- if (n->prev ? (n->prev->lastline != n->line) :
- (n->parent && n->parent->line != n->line)) {
- h->flags &= ~HTML_KEEP;
- h->flags |= HTML_PREKEEP;
- }
+ if (h->flags & HTML_KEEP && n->flags & MDOC_LINE) {
+ h->flags &= ~HTML_KEEP;
+ h->flags |= HTML_PREKEEP;
}
if (child && n->child)
diff --git a/mdoc_macro.c b/mdoc_macro.c
index 5a8fd3f2..00bd7fa7 100644
--- a/mdoc_macro.c
+++ b/mdoc_macro.c
@@ -262,9 +262,6 @@ rew_last(struct mdoc *mdoc, const struct mdoc_node *to)
assert(to);
mdoc->next = MDOC_NEXT_SIBLING;
while (mdoc->last != to) {
- if ( ! (mdoc->last->flags & MDOC_VALID))
- mdoc->last->lastline = to->lastline -
- (mdoc->flags & MDOC_NEWLINE ? 1 : 0);
/*
* Save the parent here, because we may delete the
* mdoc->last node in the post-validation phase and reset
@@ -578,10 +575,8 @@ blk_exp_close(MACRO_PROT_ARGS)
/* Remember the start of our own body. */
if (n->type == MDOC_BODY && atok == n->tok) {
- if (n->end == ENDBODY_NOT) {
+ if (n->end == ENDBODY_NOT)
body = n;
- n->lastline = line;
- }
continue;
}
@@ -594,7 +589,6 @@ blk_exp_close(MACRO_PROT_ARGS)
}
if (atok == n->tok) {
- n->lastline = line;
assert(body);
/*
diff --git a/mdoc_term.c b/mdoc_term.c
index 73849e31..d101bbb3 100644
--- a/mdoc_term.c
+++ b/mdoc_term.c
@@ -319,12 +319,9 @@ print_mdoc_node(DECL_ARGS)
* invoked in a prior line, revert it to PREKEEP.
*/
- if (TERMP_KEEP & p->flags) {
- if (n->prev ? (n->prev->lastline != n->line) :
- (n->parent && n->parent->line != n->line)) {
- p->flags &= ~TERMP_KEEP;
- p->flags |= TERMP_PREKEEP;
- }
+ if (p->flags & TERMP_KEEP && n->flags & MDOC_LINE) {
+ p->flags &= ~TERMP_KEEP;
+ p->flags |= TERMP_PREKEEP;
}
/*
diff --git a/tree.c b/tree.c
index 3afb86ff..af479d5a 100644
--- a/tree.c
+++ b/tree.c
@@ -162,10 +162,7 @@ print_mdoc(const struct mdoc_node *n, int indent)
putchar(' ');
if (MDOC_LINE & n->flags)
putchar('*');
- printf("%d:%d", n->line, n->pos + 1);
- if (n->lastline != n->line)
- printf("-%d", n->lastline);
- putchar('\n');
+ printf("%d:%d\n", n->line, n->pos + 1);
}
if (n->eqn)