aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorIngo Schwarze <schwarze@openbsd.org>2017-02-11 20:22:35 +0000
committerIngo Schwarze <schwarze@openbsd.org>2017-02-11 20:22:35 +0000
commitd239cb85c79395e48ba21125d4726cd6b9325606 (patch)
treed16eddbdde2408c10cc6a0f2b286e2c8d600f048
parentd7f3a4ca3b8b9878ad0b82dfa10ba9efe5939b74 (diff)
downloadmandoc-d239cb85c79395e48ba21125d4726cd6b9325606.tar.gz
mandoc-d239cb85c79395e48ba21125d4726cd6b9325606.tar.zst
mandoc-d239cb85c79395e48ba21125d4726cd6b9325606.zip
new regression tests for mdoc_macro.c revs. 1.211-1.215
-rw-r--r--regress/mdoc/Bl/Makefile11
-rw-r--r--regress/mdoc/Bl/breakingTa.in14
-rw-r--r--regress/mdoc/Bl/breakingTa.out_ascii12
-rw-r--r--regress/mdoc/Nd/broken.in8
-rw-r--r--regress/mdoc/Nd/broken.out_ascii4
-rw-r--r--regress/mdoc/Nd/broken.out_lint1
-rw-r--r--regress/mdoc/Nm/Makefile2
-rw-r--r--regress/mdoc/Nm/broken.in13
-rw-r--r--regress/mdoc/Nm/broken.out_ascii7
-rw-r--r--regress/mdoc/Nm/broken.out_lint2
-rw-r--r--regress/mdoc/break/tail.in15
-rw-r--r--regress/mdoc/break/tail.out_ascii7
-rw-r--r--regress/mdoc/break/tail.out_lint1
13 files changed, 85 insertions, 12 deletions
diff --git a/regress/mdoc/Bl/Makefile b/regress/mdoc/Bl/Makefile
index 3d21a8be..c8c9b3c9 100644
--- a/regress/mdoc/Bl/Makefile
+++ b/regress/mdoc/Bl/Makefile
@@ -5,7 +5,7 @@ REGRESS_TARGETS += column colNoIt extend nested offset secstart
REGRESS_TARGETS += notype multitype badargs
REGRESS_TARGETS += empty noIt emptyhead emptytag emptyitem multitag
-REGRESS_TARGETS += bareIt bareTa unclosed break breakingIt broken
+REGRESS_TARGETS += bareIt bareTa unclosed break breakingIt breakingTa broken
UTF8_TARGETS = dash
@@ -13,6 +13,11 @@ LINT_TARGETS = column notype badargs tag
LINT_TARGETS += empty noIt emptyhead emptytag emptyitem
LINT_TARGETS += bareIt bareTa break breakingIt broken
+# groff-mandoc differences:
+# - groff allows enclosures to span Ta, mandoc does not
+
+SKIP_GROFF ?= breakingTa
+
# groff-1.22.3 defects:
# - lists with missing or late type ruin indentation
# - empty lists ruin indentation and sometimes cause empty lines
@@ -21,9 +26,9 @@ LINT_TARGETS += bareIt bareTa break breakingIt broken
# - breaking a list aborts processing
# - empty -tag item heads lose the blank line and the indentation
-SKIP_GROFF ?= notype empty break breakingIt broken emptytag
+SKIP_GROFF += notype empty break breakingIt broken emptytag
-SKIP_TMAN ?= column colNoIt multitype multitag bareTa break broken
+SKIP_TMAN ?= column colNoIt multitype multitag bareTa break breakingTa broken
# Fixing the indentation in long .IP and .TP tags in -man -Tascii
# caused a minor regression in -Tman that is not trivial to fix,
diff --git a/regress/mdoc/Bl/breakingTa.in b/regress/mdoc/Bl/breakingTa.in
new file mode 100644
index 00000000..ca8e5769
--- /dev/null
+++ b/regress/mdoc/Bl/breakingTa.in
@@ -0,0 +1,14 @@
+.Dd February 11, 2017
+.Dt BL-BREAKINGTA 1
+.Os OpenBSD
+.Sh NAME
+.Nm Bl-breakingTa
+.Nd tab macro breaking a block
+.Sh DESCRIPTION
+.\" Crashed before mdoc_macro.c OpenBSD rev. 1.172
+initial text
+.Bl -column 6n 6n
+.It it Aq aq Ta ta Bo bo bc
+.Bc Pq pq
+.El
+final text
diff --git a/regress/mdoc/Bl/breakingTa.out_ascii b/regress/mdoc/Bl/breakingTa.out_ascii
new file mode 100644
index 00000000..9a0d48aa
--- /dev/null
+++ b/regress/mdoc/Bl/breakingTa.out_ascii
@@ -0,0 +1,12 @@
+BL-BREAKINGTA(1) General Commands Manual BL-BREAKINGTA(1)
+
+NNAAMMEE
+ BBll--bbrreeaakkiinnggTTaa - tab macro breaking a block
+
+DDEESSCCRRIIPPTTIIOONN
+ initial text
+
+ it <aq> ta [bo bc] (pq)
+ final text
+
+OpenBSD February 11, 2017 OpenBSD
diff --git a/regress/mdoc/Nd/broken.in b/regress/mdoc/Nd/broken.in
index e61804ac..16ac98d9 100644
--- a/regress/mdoc/Nd/broken.in
+++ b/regress/mdoc/Nd/broken.in
@@ -19,4 +19,12 @@ back to outer list
.It outer tag
outer text
.El
+.Pp
+Broken together with a child block:
+.\" Crashed before mdoc_macro.c OpenBSD rev. 1.171
+.Ao ao
+.Bo bo
+.Nd nd
+.Pq pq bc Bc ac
+.Ac Op op
end of file
diff --git a/regress/mdoc/Nd/broken.out_ascii b/regress/mdoc/Nd/broken.out_ascii
index 5752f975..12868f55 100644
--- a/regress/mdoc/Nd/broken.out_ascii
+++ b/regress/mdoc/Nd/broken.out_ascii
@@ -12,6 +12,8 @@ DDEESSCCRRIIPPTTIIOONN
outer tag
outer text
- end of file
+
+ Broken together with a child block: <ao [bo - nd (pq bc] ac)> [op] end of
+ file
OpenBSD February 11, 2015 OpenBSD
diff --git a/regress/mdoc/Nd/broken.out_lint b/regress/mdoc/Nd/broken.out_lint
index 2fc6732b..181ec60b 100644
--- a/regress/mdoc/Nd/broken.out_lint
+++ b/regress/mdoc/Nd/broken.out_lint
@@ -1,3 +1,4 @@
+mandoc: broken.in:28:11: WARNING: blocks badly nested: Bo breaks Pq
mandoc: broken.in:5:2: WARNING: bad NAME section content: Oo
mandoc: broken.in:9:1: WARNING: bad NAME section content: text
mandoc: broken.in:4:2: WARNING: NAME section without Nm before Nd
diff --git a/regress/mdoc/Nm/Makefile b/regress/mdoc/Nm/Makefile
index d87f43fd..2b5a5b83 100644
--- a/regress/mdoc/Nm/Makefile
+++ b/regress/mdoc/Nm/Makefile
@@ -4,7 +4,7 @@ REGRESS_TARGETS = badNAME badNAMEuse break broken
REGRESS_TARGETS += empty emptyNAME emptyNAMEuse
REGRESS_TARGETS += font long par parns punct
-LINT_TARGETS = badNAME badNAMEuse break
+LINT_TARGETS = badNAME badNAMEuse break broken
# groff-1.22.3/mandoc differences:
# - When the head of an Nm block in the SYNOPSIS is broken by an
diff --git a/regress/mdoc/Nm/broken.in b/regress/mdoc/Nm/broken.in
index 58a28bad..8dfd0166 100644
--- a/regress/mdoc/Nm/broken.in
+++ b/regress/mdoc/Nm/broken.in
@@ -1,4 +1,4 @@
-.Dd February 2, 2015
+.Dd February 11, 2017
.Dt NM-BROKEN 1
.Os OpenBSD
.Sh NAME
@@ -8,3 +8,14 @@
.Ft int
.Fo function
.Nm name Fc tail
+.\" Crashed in validation before mdoc_macro.c OpenBSD rev. 1.167
+.Bl -dash
+.Oo oo
+.Nm nm
+.Bk -words
+oc
+.Oc
+.Ek
+.It
+item
+.El
diff --git a/regress/mdoc/Nm/broken.out_ascii b/regress/mdoc/Nm/broken.out_ascii
index 1f9ed5a2..0035b888 100644
--- a/regress/mdoc/Nm/broken.out_ascii
+++ b/regress/mdoc/Nm/broken.out_ascii
@@ -6,6 +6,9 @@ NNAAMMEE
SSYYNNOOPPSSIISS
_i_n_t
ffuunnccttiioonn(nnaammee);
- tail
+ tail [oo
+ nnmm oc]
-OpenBSD February 2, 2015 OpenBSD
+ -- item
+
+OpenBSD February 11, 2017 OpenBSD
diff --git a/regress/mdoc/Nm/broken.out_lint b/regress/mdoc/Nm/broken.out_lint
new file mode 100644
index 00000000..4a5eb2ae
--- /dev/null
+++ b/regress/mdoc/Nm/broken.out_lint
@@ -0,0 +1,2 @@
+mandoc: broken.in:17:2: WARNING: blocks badly nested: Oo breaks Bk
+mandoc: broken.in:13:2: WARNING: moving content out of list: Oo
diff --git a/regress/mdoc/break/tail.in b/regress/mdoc/break/tail.in
index ff250591..c4984bee 100644
--- a/regress/mdoc/break/tail.in
+++ b/regress/mdoc/break/tail.in
@@ -1,9 +1,9 @@
-.Dd April 5, 2015
+.Dd February 11, 2017
.Dt BREAK-TAIL 1
.Os OpenBSD
.Sh NAME
.Nm break-tail
-.Nd tail arguments on broken blocks
+.Nd tail arguments on or after broken blocks
.Sh DESCRIPTION
Broken by a partial explicit block:
.Ao ao
@@ -35,3 +35,14 @@ list body
.Pc tail
list body
.El
+.Pp
+After a broken block: closing child on closing macro,
+then opening child on closing macro:
+.\" Crashed before mdoc_macro.c OpenBSD rev. 1.169
+.Ao ao
+.Bo bo
+.Bro bro
+.Po po brc
+.Brc pc
+.Pc bc Bc ac
+.Ac Op op
diff --git a/regress/mdoc/break/tail.out_ascii b/regress/mdoc/break/tail.out_ascii
index 62675d29..3d1dd0ce 100644
--- a/regress/mdoc/break/tail.out_ascii
+++ b/regress/mdoc/break/tail.out_ascii
@@ -1,7 +1,7 @@
BREAK-TAIL(1) General Commands Manual BREAK-TAIL(1)
NNAAMMEE
- bbrreeaakk--ttaaiill - tail arguments on broken blocks
+ bbrreeaakk--ttaaiill - tail arguments on or after broken blocks
DDEESSCCRRIIPPTTIIOONN
Broken by a partial explicit block: <ao [bo ac> bc] tail <ao [bo ac> bc]
@@ -18,4 +18,7 @@ DDEESSCCRRIIPPTTIIOONN
it <ao ac> (po pc) tail
list body
-OpenBSD April 5, 2015 OpenBSD
+ After a broken block: closing child on closing macro, then opening child
+ on closing macro: <ao [bo {bro (po brc} pc) bc] ac> [op]
+
+OpenBSD February 11, 2017 OpenBSD
diff --git a/regress/mdoc/break/tail.out_lint b/regress/mdoc/break/tail.out_lint
index d6f1b900..d6449913 100644
--- a/regress/mdoc/break/tail.out_lint
+++ b/regress/mdoc/break/tail.out_lint
@@ -2,3 +2,4 @@ mandoc: tail.in:11:2: WARNING: blocks badly nested: Ao breaks Bo
mandoc: tail.in:15:2: WARNING: blocks badly nested: Ao breaks Bo
mandoc: tail.in:20:2: WARNING: blocks badly nested: Aq breaks Bo
mandoc: tail.in:22:2: WARNING: blocks badly nested: Aq breaks Bo
+mandoc: tail.in:46:2: WARNING: blocks badly nested: Bro breaks Po