aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/regress/roff/string
diff options
context:
space:
mode:
Diffstat (limited to 'regress/roff/string')
-rw-r--r--regress/roff/string/Makefile4
-rw-r--r--regress/roff/string/undef.in69
-rw-r--r--regress/roff/string/undef.out_ascii37
-rw-r--r--regress/roff/string/undef.out_lint2
4 files changed, 110 insertions, 2 deletions
diff --git a/regress/roff/string/Makefile b/regress/roff/string/Makefile
index 354a7a75..eda8c8ad 100644
--- a/regress/roff/string/Makefile
+++ b/regress/roff/string/Makefile
@@ -1,7 +1,7 @@
# $OpenBSD: Makefile,v 1.6 2014/07/06 19:08:57 schwarze Exp $
-REGRESS_TARGETS = escape infinite name std zerolength
-LINT_TARGETS = name std
+REGRESS_TARGETS = escape infinite name std undef zerolength
+LINT_TARGETS = name std undef
# The infinite test fails badly with groff-1.20.1:
# It fails to print the following text.
diff --git a/regress/roff/string/undef.in b/regress/roff/string/undef.in
new file mode 100644
index 00000000..d84a67c6
--- /dev/null
+++ b/regress/roff/string/undef.in
@@ -0,0 +1,69 @@
+.\" $OpenBSD: std.in,v 1.2 2017/07/04 14:53:27 schwarze Exp $
+.TH STRING-UNDEF 1 "April 9, 2018"
+.SH NAME
+string-undef - expanding undefined strings
+.SH DESCRIPTION
+.SS User defined string
+The sting "mys" is
+.ie dmys defined
+.el undefined
+and remains
+.ie dmys defined.
+.el undefined.
+.PP
+Its value is "\*[mys]", and now it is
+.ie dmys defined,
+.el undefined,
+and its value is still "\*[mys]".
+.PP
+.ds mys newval
+After redefining it to "\*[mys]", it is of course still
+.ie dmys defined.
+.el undefined.
+.PP
+.rm mys
+After removing the definition, it is now
+.ie dmys defined.
+.el undefined.
+.SS User defined macro
+The macro "mym" is
+.ie dmym defined.
+.el undefined.
+.PP
+It has no effect:
+.mym
+But now it is
+.ie dmym defined.
+.el undefined.
+.PP
+.de mym
+neweffect
+..
+After defining it as:
+.mym
+it is of course still
+.ie dmym defined.
+.el undefined.
+.PP
+.rm mym
+After removing the definition, it is now
+.ie dmym defined.
+.el undefined.
+.SS Renamed macro
+The standard .BR macro is
+.ie dBR defined,
+.el undefined,
+and it
+.BR works .
+.PP
+.rn BR newBR
+After renaming it, the new name is
+.ie dnewBR defined,
+.el undefined,
+and
+.newBR works .
+.SS Predefined string
+A predefined string is
+.ie dR defined
+.el undefined
+and has the value "\*R".
diff --git a/regress/roff/string/undef.out_ascii b/regress/roff/string/undef.out_ascii
new file mode 100644
index 00000000..6e7bd01f
--- /dev/null
+++ b/regress/roff/string/undef.out_ascii
@@ -0,0 +1,37 @@
+STRING-UNDEF(1) General Commands Manual STRING-UNDEF(1)
+
+
+
+NNAAMMEE
+ string-undef - expanding undefined strings
+
+DDEESSCCRRIIPPTTIIOONN
+ UUsseerr ddeeffiinneedd ssttrriinngg
+ The sting "mys" is undefined and remains undefined.
+
+ Its value is "", and now it is defined, and its value is still "".
+
+ After redefining it to "newval", it is of course still defined.
+
+ After removing the definition, it is now undefined.
+
+ UUsseerr ddeeffiinneedd mmaaccrroo
+ The macro "mym" is undefined.
+
+ It has no effect: But now it is defined.
+
+ After defining it as: neweffect it is of course still defined.
+
+ After removing the definition, it is now undefined.
+
+ RReennaammeedd mmaaccrroo
+ The standard .BR macro is defined, and it wwoorrkkss.
+
+ After renaming it, the new name is defined, and wwoorrkkss.
+
+ PPrreeddeeffiinneedd ssttrriinngg
+ A predefined string is defined and has the value "(R)".
+
+
+
+OpenBSD April 9, 2018 STRING-UNDEF(1)
diff --git a/regress/roff/string/undef.out_lint b/regress/roff/string/undef.out_lint
new file mode 100644
index 00000000..320ec604
--- /dev/null
+++ b/regress/roff/string/undef.out_lint
@@ -0,0 +1,2 @@
+mandoc: undef.in:14:15: WARNING: undefined string, using "": mys
+mandoc: undef.in:34:2: ERROR: skipping unknown macro: .mym