summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog3
-rw-r--r--Doc/Zsh/builtins.yo10
2 files changed, 11 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index b9ffd9471..38ce503a8 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
2021-05-18 Daniel Shahaf <d.s@daniel.shahaf.name>
+ * 48601/0004: Doc/Zsh/builtins.yo: docs: return: Give examples
+ of using arithmetic evaluation.
+
* 48601/0003: Doc/Zsh/builtins.yo: docs: functions -M: Add a
subheading and index entries.
diff --git a/Doc/Zsh/builtins.yo b/Doc/Zsh/builtins.yo
index 0129c6b57..f8e11d79d 100644
--- a/Doc/Zsh/builtins.yo
+++ b/Doc/Zsh/builtins.yo
@@ -1627,7 +1627,13 @@ cindex(functions, returning from)
item(tt(return) [ var(n) ])(
Causes a shell function or `tt(.)' script to return to
the invoking script with the return status specified by
-an arithmetic expression var(n). If var(n)
+an arithmetic expression var(n).
+For example, the following prints `tt(42)':
+
+example(() { integer foo=40; return "foo + 2" }
+echo $?)
+
+If var(n)
is omitted, the return status is that of the last command
executed.
@@ -1638,7 +1644,7 @@ will return to whatever it was previously processing; with a non-zero
status, the shell will behave as interrupted except that the return
status of the trap is retained. Note that the numeric value of the signal
which caused the trap is passed as the first argument, so the statement
-`tt(return $((128PLUS()$1)))' will return the same status as if the signal
+`tt(return "128PLUS()$1")' will return the same status as if the signal
had not been trapped.
)
module(sched)(zsh/sched)