CVSROOT: /sources/m4
Module name: m4
Branch: branch-1_4
Changes by: Eric Blake <ericb> 06/10/13 22:25:32
Index: doc/m4.texinfo
===================================================================
RCS file: /sources/m4/m4/doc/m4.texinfo,v
retrieving revision 1.1.1.1.2.84
retrieving revision 1.1.1.1.2.85
diff -u -b -r1.1.1.1.2.84 -r1.1.1.1.2.85
--- doc/m4.texinfo 13 Oct 2006 12:59:17 -0000 1.1.1.1.2.84
+++ doc/m4.texinfo 13 Oct 2006 22:25:32 -0000 1.1.1.1.2.85
@@ -3240,9 +3240,46 @@
(512K, currently). When this maximum is about to be exceeded,
a temporary file is opened to receive the contents of the biggest
diversion still in memory, freeing this memory for other diversions.
+When creating the temporary file, @code{m4} honors the value of the
+environment variable @env{TMPDIR}, and falls back to @file{/tmp}.
So, it is theoretically possible that the number of diversions be
limited by the number of available file descriptors.
[EMAIL PROTECTED]
[EMAIL PROTECTED] We need to test spilled diversions, but don't need to expose
[EMAIL PROTECTED] this highly repetitive test in the manual.
+
[EMAIL PROTECTED]
+divert(`-1')define(`f', `.')
+define(`f', defn(`f')defn(`f'))
+define(`f', defn(`f')defn(`f'))
+define(`f', defn(`f')defn(`f'))
+define(`f', defn(`f')defn(`f'))
+define(`f', defn(`f')defn(`f'))
+define(`f', defn(`f')defn(`f'))
+define(`f', defn(`f')defn(`f'))
+define(`f', defn(`f')defn(`f'))
+define(`f', defn(`f')defn(`f'))
+define(`f', defn(`f')defn(`f'))
+define(`f', defn(`f')defn(`f'))
+define(`f', defn(`f')defn(`f'))
+define(`f', defn(`f')defn(`f'))
+define(`f', defn(`f')defn(`f'))
+define(`f', defn(`f')defn(`f'))
+define(`f', defn(`f')defn(`f'))
+define(`f', defn(`f')defn(`f'))
+define(`f', defn(`f')defn(`f'))
+define(`f', defn(`f')defn(`f'))
+define(`f', defn(`f')defn(`f'))
+divert`'dnl
+len(f)
[EMAIL PROTECTED]
+divert(`1')
+f
+divert(`-1')undivert
[EMAIL PROTECTED] example
[EMAIL PROTECTED] ignore
+
@c FIXME: need some explanation here why this is a useful feature, not
@c just how you use it.
@@ -4394,16 +4431,9 @@
@code{maketemp}, so a future version of @acronym{GNU} M4 may have
changes in this area.
[EMAIL PROTECTED]
[EMAIL PROTECTED] This test makes sure maketemp gets testsuite coverage, but is
[EMAIL PROTECTED] somewhat complex for use in the manual.
@example
-dnl This test assumes /tmp is a valid directory name, which is not true
-dnl for native Windows.
-ifdef(`__unix__', , `errprint(` skipping: not sure /tmp exists
-')m4exit(`77')')dnl
-define(`file1', maketemp(`/tmp/fooXXXXXX'))dnl
-define(`file2', maketemp(`/tmp/fooXXXXXX'))dnl
+define(`file1', maketemp(`fooXXXXXX'))dnl
+define(`file2', maketemp(`fooXXXXXX'))dnl
ifelse(file1, file2, `same', `different')
@result{}different
syscmd(`rm 'file1 file2)
@@ -4411,7 +4441,6 @@
sysval
@result{}0
@end example
[EMAIL PROTECTED] ignore
@node Miscellaneous
@chapter Miscellaneous builtin macros
@@ -5189,7 +5218,7 @@
@example
define(`fatal_error',
- `errprint(ifdef(`__program', `__program__', ``m4'')'dnl
+ `errprint(ifdef(`__program__', `__program__', ``m4'')'dnl
`:ifelse(__line__, `0', `',
`__file__:__line__:')` fatal error: $*
')m4exit(`1')')