aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/regress/mdoc/Va
diff options
context:
space:
mode:
authorIngo Schwarze <schwarze@openbsd.org>2017-05-30 16:22:03 +0000
committerIngo Schwarze <schwarze@openbsd.org>2017-05-30 16:22:03 +0000
commita20be95dec7797c55257792a32b6b39bdbdfe595 (patch)
treec792fc779fd4c6076766e78fa7644b081e72b26f /regress/mdoc/Va
parenta81d5d8c62b37fdb8d82d9cebd9cfa044222b9d8 (diff)
downloadmandoc-a20be95dec7797c55257792a32b6b39bdbdfe595.tar.gz
mandoc-a20be95dec7797c55257792a32b6b39bdbdfe595.tar.zst
mandoc-a20be95dec7797c55257792a32b6b39bdbdfe595.zip
Macro argument quoting does not prevent recognition of punctuation
and of called macros. This bug affects almost all macros, and fixing it simplifies the code. It is amazing that the bogus ARGS_QWORD feature got implemented in the first place, and then carrier along for more than eight years without anybody ever noticing that it was pointless. Reported by Leah Neukirchen <leah at vuxu dot org>, found on Void Linux.
Diffstat (limited to 'regress/mdoc/Va')
-rw-r--r--regress/mdoc/Va/Makefile2
-rw-r--r--regress/mdoc/Va/punct.in42
-rw-r--r--regress/mdoc/Va/punct.out_ascii13
-rw-r--r--regress/mdoc/Va/punct.out_markdown45
4 files changed, 101 insertions, 1 deletions
diff --git a/regress/mdoc/Va/Makefile b/regress/mdoc/Va/Makefile
index 3d426934..19a5ebb2 100644
--- a/regress/mdoc/Va/Makefile
+++ b/regress/mdoc/Va/Makefile
@@ -1,6 +1,6 @@
# $OpenBSD: Makefile,v 1.3 2014/07/02 20:18:42 schwarze Exp $
-REGRESS_TARGETS = basic font noarg
+REGRESS_TARGETS = basic font noarg punct
LINT_TARGETS = noarg
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Va/punct.in b/regress/mdoc/Va/punct.in
new file mode 100644
index 00000000..198e95ae
--- /dev/null
+++ b/regress/mdoc/Va/punct.in
@@ -0,0 +1,42 @@
+.Dd August 21, 2014
+.Dt AR-PUNCT 1
+.Os OpenBSD
+.Sh NAME
+.Nm Va-punct
+.Nd punctuation handling by the Va macro
+.Sh DESCRIPTION
+closing punctuation
+.Va a )
+only one
+.Va )
+only more than one
+.Va ) )
+middle
+.Va a ) z
+start
+.Va ) z
+dot
+.Va . z
+comma
+.Va , z
+semicolon
+.Va ; z
+colon
+.Va : z
+quest
+.Va ? z
+excl
+.Va ! z
+paren
+.Va ) z
+bracket
+.Va ] z
+bar
+.Va | m
+op paren
+.Va ( a
+op bracket
+.Va [ a
+.Pp
+quoted punctuation:
+.Va a "(" b "|" c ")" d "," "Sy" bold .
diff --git a/regress/mdoc/Va/punct.out_ascii b/regress/mdoc/Va/punct.out_ascii
new file mode 100644
index 00000000..a333c7ee
--- /dev/null
+++ b/regress/mdoc/Va/punct.out_ascii
@@ -0,0 +1,13 @@
+AR-PUNCT(1) General Commands Manual AR-PUNCT(1)
+
+NNAAMMEE
+ VVaa--ppuunncctt - punctuation handling by the Va macro
+
+DDEESSCCRRIIPPTTIIOONN
+ closing punctuation _a) only one ) only more than one )) middle _a) _z start
+ ) _z dot . _z comma , _z semicolon ; _z colon : _z quest ? _z excl ! _z paren )
+ _z bracket ] _z bar | _m op paren (_a op bracket [_a
+
+ quoted punctuation: _a (_b | _c) _d, bboolldd.
+
+OpenBSD August 21, 2014 OpenBSD
diff --git a/regress/mdoc/Va/punct.out_markdown b/regress/mdoc/Va/punct.out_markdown
new file mode 100644
index 00000000..772793f0
--- /dev/null
+++ b/regress/mdoc/Va/punct.out_markdown
@@ -0,0 +1,45 @@
+AR-PUNCT(1) - General Commands Manual
+
+# NAME
+
+**Va-punct** - punctuation handling by the Va macro
+
+# DESCRIPTION
+
+closing punctuation
+*a*)
+only one
+)
+only more than one
+))
+middle
+*a*) *z*
+start
+) *z*
+dot
+. *z*
+comma
+, *z*
+semicolon
+; *z*
+colon
+: *z*
+quest
+? *z*
+excl
+! *z*
+paren
+) *z*
+bracket
+] *z*
+bar
+| *m*
+op paren
+(*a*
+op bracket
+\[*a*
+
+quoted punctuation:
+*a* (*b* | *c*) *d*, **bold**.
+
+OpenBSD - August 21, 2014