From d239cb85c79395e48ba21125d4726cd6b9325606 Mon Sep 17 00:00:00 2001 From: Ingo Schwarze Date: Sat, 11 Feb 2017 20:22:35 +0000 Subject: new regression tests for mdoc_macro.c revs. 1.211-1.215 --- regress/mdoc/Bl/Makefile | 11 ++++++++--- regress/mdoc/Bl/breakingTa.in | 14 ++++++++++++++ regress/mdoc/Bl/breakingTa.out_ascii | 12 ++++++++++++ regress/mdoc/Nd/broken.in | 8 ++++++++ regress/mdoc/Nd/broken.out_ascii | 4 +++- regress/mdoc/Nd/broken.out_lint | 1 + regress/mdoc/Nm/Makefile | 2 +- regress/mdoc/Nm/broken.in | 13 ++++++++++++- regress/mdoc/Nm/broken.out_ascii | 7 +++++-- regress/mdoc/Nm/broken.out_lint | 2 ++ regress/mdoc/break/tail.in | 15 +++++++++++++-- regress/mdoc/break/tail.out_ascii | 7 +++++-- regress/mdoc/break/tail.out_lint | 1 + 13 files changed, 85 insertions(+), 12 deletions(-) create mode 100644 regress/mdoc/Bl/breakingTa.in create mode 100644 regress/mdoc/Bl/breakingTa.out_ascii create mode 100644 regress/mdoc/Nm/broken.out_lint (limited to 'regress') 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 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: [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: bc] tail bc] @@ -18,4 +18,7 @@ DDEESSCCRRIIPPTTIIOONN it (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: [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 -- cgit v1.2.3-56-ge451