aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2017-02-17 16:29:36 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2017-02-17 16:29:36 +0200
commit0600d3a82c414fff5e63038f9550ca28698ce6d6 (patch)
treef098ac4b39c479c36acef3245e7e5f205cf34723 /doc
parent9cf682c10cbc46679d361f937b124ed301d8ce25 (diff)
Add note on set being pseudo-builtin in testscript
Diffstat (limited to 'doc')
-rw-r--r--doc/testscript.cli6
1 files changed, 5 insertions, 1 deletions
diff --git a/doc/testscript.cli b/doc/testscript.cli
index 5cb4521..49e9d45 100644
--- a/doc/testscript.cli
+++ b/doc/testscript.cli
@@ -1170,7 +1170,7 @@ token is an unquoted word, then the second token of the line is examined in
the \c{second_token} mode (see below). If it is a variable assignment (either
\c{+=}, \c{=+}, or \c{=}), then the line type is a variable line. Otherwise,
it is a test command line. Note that variables with computed names can only
-be set using the \l{#builtins-set \c{set} builtin}.
+be set using the \l{#builtins-set \c{set} pseudo-builtin}.
The Testscript language defines the following distinct lexing modes (or
contexts):
@@ -2436,6 +2436,10 @@ set [-e|--exact] [(-n|--newline)|(-w|--whitespace)] [<attr>] <var>
Set variable from the \c{stdin} input.
+Note that \c{set} is a \i{pseudo-builtin}. In particular, it must be the last
+command in the pipe expression, it either succeeds or terminates abnormally,
+and its \c{stderr} cannot be redirected.
+
Unless the \c{-e|--exact} option is specified, a single final newline is
ignored in the input.