From: Peter Stephenson <pws@csr.com>
To: zsh-workers@sunsite.dk (Zsh hackers list)
Subject: Re: Debugging of dynamocally defined functions
Date: Mon, 09 Jul 2001 17:30:52 +0100 [thread overview]
Message-ID: <Tc0a88d0154a52c6a06@mailsweeper01.cambridgesiliconradio.com> (raw)
In-Reply-To: "Peter Stephenson"'s message of "Mon, 09 Jul 2001 15:52:54 BST." <Tc0a88d0154a4d24461@mailsweeper01.cambridgesiliconradio.com>
Peter Stephenson wrote:
> It turns on line numbering anywhere which behaves like an
> eval (by using the parse_string() function; there are some other ways into
> the parser which still don't do this).
These are the consequent changes for the tests. Most of these actually
improve things --- the line numbers now reflect the position in the eval,
rather than the line of the function that was executing, which isn't
visible when you're writing the test.
However, there's one nuisance: trap '...' DEBUG now gives a line number in
the trap expression, rather than the number of the line you've just
executed. This is probably a bug. It's annoying to have that single case
where the line number has to be passed through, though.
Index: Test/A01grammar.ztst
===================================================================
RCS file: /cvsroot/zsh/zsh/Test/A01grammar.ztst,v
retrieving revision 1.2
diff -u -r1.2 A01grammar.ztst
--- Test/A01grammar.ztst 2001/06/22 06:35:54 1.2
+++ Test/A01grammar.ztst 2001/07/09 16:26:57
@@ -108,7 +108,7 @@
:
fi
1d:`if ...' (iv)
-?ZTST_execchunk:-1: parse error near `fi'
+?ZTST_execchunk:3: parse error near `fi'
for name in word to term; do
print $name
Index: Test/A02alias.ztst
===================================================================
RCS file: /cvsroot/zsh/zsh/Test/A02alias.ztst,v
retrieving revision 1.2
diff -u -r1.2 A02alias.ztst
--- Test/A02alias.ztst 2001/06/25 03:06:35 1.2
+++ Test/A02alias.ztst 2001/07/09 16:26:57
@@ -16,7 +16,7 @@
\foo foo
127:Not aliasing
-?ZTST_execchunk:2: command not found: foo
+?ZTST_execchunk:1: command not found: foo
\bar \bar
0:Aliasing with a backslash
Index: Test/A04redirect.ztst
===================================================================
RCS file: /cvsroot/zsh/zsh/Test/A04redirect.ztst,v
retrieving revision 1.1
diff -u -r1.1 A04redirect.ztst
--- Test/A04redirect.ztst 2001/04/02 12:31:04 1.1
+++ Test/A04redirect.ztst 2001/07/09 16:26:57
@@ -200,7 +200,7 @@
print cat input >out1
<out1
1:READNULLCMD with NULLCMD unset
-?ZTST_execchunk:2: redirection with no command
+?ZTST_execchunk:3: redirection with no command
NULLCMD=:
>out1
Index: Test/A05execution.ztst
===================================================================
RCS file: /cvsroot/zsh/zsh/Test/A05execution.ztst,v
retrieving revision 1.1
diff -u -r1.1 A05execution.ztst
--- Test/A05execution.ztst 2001/04/02 12:31:39 1.1
+++ Test/A05execution.ztst 2001/07/09 16:26:57
@@ -134,7 +134,7 @@
rm fn
0:trap DEBUG
>Line 1
->Line 2
+>Line 1
TRAPZERR() { print Command failed; }
true
Index: Test/C01arith.ztst
===================================================================
RCS file: /cvsroot/zsh/zsh/Test/C01arith.ztst,v
retrieving revision 1.2
diff -u -r1.2 C01arith.ztst
--- Test/C01arith.ztst 2001/07/06 18:33:59 1.2
+++ Test/C01arith.ztst 2001/07/09 16:26:57
@@ -53,11 +53,11 @@
print $(( 3 ? 2 ))
1:parsing ternary (1)
-?ZTST_execchunk:2: ':' expected
+?ZTST_execchunk:1: ':' expected
print $(( 3 ? 2 : 1 : 4 ))
1:parsing ternary (2)
-?ZTST_execchunk:2: ':' without '?'
+?ZTST_execchunk:1: ':' without '?'
print $(( 0, 4 ? 3 : 1, 5 ))
0:comma operator
@@ -91,7 +91,7 @@
print $(( 13 = 42 ))
1:bad lvalue
-?ZTST_execchunk:2: lvalue required
+?ZTST_execchunk:1: lvalue required
x=/bar
(( x = 32 ))
Index: Test/D04parameter.ztst
===================================================================
RCS file: /cvsroot/zsh/zsh/Test/D04parameter.ztst,v
retrieving revision 1.2
diff -u -r1.2 D04parameter.ztst
--- Test/D04parameter.ztst 2001/05/19 23:47:58 1.2
+++ Test/D04parameter.ztst 2001/07/09 16:26:58
@@ -74,7 +74,7 @@
1:${...:?...}, ${...?...}
>set1v
>
-?ZTST_execchunk:2: unset1: exiting1
+?ZTST_execchunk:1: unset1: exiting1
?ZTST_execchunk:2: null1: exiting2
print ${set1:+word1} ${set1+word2} ${null1:+word3} ${null1+word4}
Index: Test/D06subscript.ztst
===================================================================
RCS file: /cvsroot/zsh/zsh/Test/D06subscript.ztst,v
retrieving revision 1.5
diff -u -r1.5 D06subscript.ztst
--- Test/D06subscript.ztst 2001/04/24 05:45:17 1.5
+++ Test/D06subscript.ztst 2001/07/09 16:26:58
@@ -95,7 +95,7 @@
eval 'A[*]=star'
1:Illegal associative array assignment
-?ZTST_execchunk:2: A: attempt to set slice of associative array
+?ZTST_execchunk:1: A: attempt to set slice of associative array
x='*'
A[$x]=xstar
Index: Test/E01options.ztst
===================================================================
RCS file: /cvsroot/zsh/zsh/Test/E01options.ztst,v
retrieving revision 1.6
diff -u -r1.6 E01options.ztst
--- Test/E01options.ztst 2001/07/05 14:51:35 1.6
+++ Test/E01options.ztst 2001/07/09 16:26:58
@@ -133,7 +133,7 @@
print [b
1:BAD_PATTERN option
>[a
-?ZTST_execchunk:2: bad pattern: [b
+?ZTST_execchunk:4: bad pattern: [b
unsetopt bareglobqual nomatch
print *(.)
@@ -192,8 +192,8 @@
1q:CDABLE_VARS option
>`print -P '%~'`/tmpcd
>back in options.tmp
-?ZTST_execchunk:cd:2: no such file or directory: cdablevar1
-?ZTST_execchunk:cd:2: no such file or directory: cdablevar2
+?ZTST_execchunk:cd:4: no such file or directory: cdablevar1
+?ZTST_execchunk:cd:10: no such file or directory: cdablevar2
# CHASE_DOTS should go with CHASE_LINKS in B01cd.ztst
# which saves me having to write it here.
@@ -227,8 +227,8 @@
>wimpole
>royston
>foxton
-?ZTST_execchunk:2: file exists: foo1
-?ZTST_execchunk:2: no such file or directory: bar1
+?ZTST_execchunk:4: file exists: foo1
+?ZTST_execchunk:6: no such file or directory: bar1
setopt cshjunkieloops
eval 'for f in swaffham bulbeck; print $f; end'
@@ -239,7 +239,7 @@
>swaffham
>bulbeck
?next one should fail
-?ZTST_execchunk:-1: parse error near `end'
+?ZTST_execchunk:1: parse error near `end'
setopt cshjunkiequotes
print this should cause an error >&2
@@ -253,7 +253,7 @@
>line three
> line four
?this should cause an error
-?ZTST_execchunk:-1: unmatched '
+?ZTST_execchunk:1: unmatched '
?this should not
nullcmd() { print '$NULLCMD run'; }
@@ -279,10 +279,10 @@
>Running $READNULLCMD
>$NULLCMD run
?This should fail
-?ZTST_execchunk:2: redirection with no command
+?ZTST_execchunk:8: redirection with no command
?This should succeed
?This should also fail
-?ZTST_execchunk:2: redirection with no command
+?ZTST_execchunk:13: redirection with no command
# nomatch should be overridden by cshnullglob
setopt nomatch cshnullglob
@@ -297,7 +297,7 @@
>tmpcd tmpfile1 tmpfile2 blah
>tmpcd tmpfile1 tmpfile2 nothing* blah
>nothing* blah
-?hoping for no match: ZTST_execchunk:2: no match
+?hoping for no match: ZTST_execchunk:4: no match
?
# The trick is to avoid =cat being expanded in the output while $catpath is.
@@ -625,7 +625,7 @@
print with nomatch flooble*
1:NOMATCH option
>with nonomatch: flooble*
-?ZTST_execchunk:2: no matches found: flooble*
+?ZTST_execchunk:4: no matches found: flooble*
# NULL_GLOB should override NONOMATCH...
setopt nullglob nomatch
@@ -688,7 +688,7 @@
>File in upper dir
>File in lower dir
>unsetting option...
-?ZTST_execchunk:2: no such file or directory: pathtestdir/findme
+?ZTST_execchunk:14: no such file or directory: pathtestdir/findme
setopt posixbuiltins
command print foo
@@ -698,7 +698,7 @@
127:POSIX_BUILTINS option
>foo
>unsetting...
-?ZTST_execchunk:2: command not found: print
+?ZTST_execchunk:5: command not found: print
# This option seems to be problematic. I don't quite know how it works.
## func() {
@@ -807,7 +807,7 @@
>one'quoted'expression
>anotherquotedexpression
- # too lazy to test jobs -Z and ARGV0.
+# too lazy to test jobs -Z and ARGV0.
(setopt restricted; cd /)
(setopt restricted; PATH=/bin:/usr/bin)
(setopt restricted; /bin/ls)
@@ -817,13 +817,13 @@
(setopt restricted; unsetopt restricted)
:
0:RESTRICTED option
-?ZTST_execchunk:cd:2: restricted
+?ZTST_execchunk:cd:1: restricted
?ZTST_execchunk:2: PATH: restricted
-?ZTST_execchunk:2: /bin/ls: restricted
-?ZTST_execchunk:hash:2: restricted: /bin/ls
-?ZTST_execchunk:2: writing redirection not allowed in restricted mode
-?ZTST_execchunk:exec:2: ls: restricted
-?ZTST_execchunk:unsetopt:2: can't change option: restricted
+?ZTST_execchunk:3: /bin/ls: restricted
+?ZTST_execchunk:hash:4: restricted: /bin/ls
+?ZTST_execchunk:5: writing redirection not allowed in restricted mode
+?ZTST_execchunk:exec:6: ls: restricted
+?ZTST_execchunk:unsetopt:7: can't change option: restricted
fn() {
print =ls ={ls,}
@@ -909,10 +909,9 @@
>nonsense
>nonsense
>nonsense
-?fn:-1: parse error near `print'
-?fn:-1: parse error near `print'
-?fn:-1: parse error near `print'
-# Eugh, that line numbering behaviour with eval is probably a bug.
+?fn:1: parse error near `print'
+?fn:1: parse error near `print'
+?fn:1: parse error near `print'
fn() { print -l $*; }
setopt shwordsplit
@@ -959,6 +958,6 @@
0:XTRACE option
>message
>message
-?+ZTST_execchunk:2> fn
+?+ZTST_execchunk:3> fn
?+fn:0> print message
-?+ZTST_execchunk:2> unsetopt xtrace
+?+ZTST_execchunk:4> unsetopt xtrace
Index: Test/E02xtrace.ztst
===================================================================
RCS file: /cvsroot/zsh/zsh/Test/E02xtrace.ztst,v
retrieving revision 1.1
diff -u -r1.1 E02xtrace.ztst
--- Test/E02xtrace.ztst 2001/04/02 12:34:40 1.1
+++ Test/E02xtrace.ztst 2001/07/09 16:26:58
@@ -54,30 +54,30 @@
>Tracing: function 2>file
>Tracing: source
>Tracing: source 2>file
->+ZTST_execchunk:2> print Tracing: ( builtin ) 2>file
->+ZTST_execchunk:2> cat
->+ZTST_execchunk:2> print Tracing: { builtin } 2>file
->+ZTST_execchunk:2> cat
->+ZTST_execchunk:2> print Tracing: do builtin done 2>file
->+ZTST_execchunk:2> cat
+>+ZTST_execchunk:7> print Tracing: ( builtin ) 2>file
+>+ZTST_execchunk:9> cat
+>+ZTST_execchunk:11> print Tracing: { builtin } 2>file
+>+ZTST_execchunk:13> cat
+>+ZTST_execchunk:15> print Tracing: do builtin done 2>file
+>+ZTST_execchunk:17> cat
?+ZTST_execchunk:2> print Tracing: builtin
-?+ZTST_execchunk:2> print Tracing: builtin 2>file
-?+ZTST_execchunk:2> cat
-?+ZTST_execchunk:2> cat
-?+ZTST_execchunk:2> print Tracing: ( builtin )
-?+ZTST_execchunk:2> cat
-?+ZTST_execchunk:2> print Tracing: { builtin }
-?+ZTST_execchunk:2> cat
-?+ZTST_execchunk:2> print Tracing: do builtin done
-?+ZTST_execchunk:2> cat
-?+ZTST_execchunk:2> xtf Tracing: function
-?+xtf:0> local regression_test_dummy_variable
-?+xtf:0> print Tracing: function
-?+ZTST_execchunk:2> xtf Tracing: function 2>file
-?+xtf:0> local regression_test_dummy_variable
-?+xtf:0> print Tracing: function 2>file
-?+ZTST_execchunk:2> . ./xt.in Tracing: source
+?+ZTST_execchunk:3> print Tracing: builtin 2>file
+?+ZTST_execchunk:4> cat
+?+ZTST_execchunk:5> cat
+?+ZTST_execchunk:6> print Tracing: ( builtin )
+?+ZTST_execchunk:8> cat
+?+ZTST_execchunk:10> print Tracing: { builtin }
+?+ZTST_execchunk:12> cat
+?+ZTST_execchunk:14> print Tracing: do builtin done
+?+ZTST_execchunk:16> cat
+?+ZTST_execchunk:18> xtf Tracing: function
+?+xtf:1> local regression_test_dummy_variable
+?+xtf:2> print Tracing: function
+?+ZTST_execchunk:19> xtf Tracing: function 2>file
+?+xtf:1> local regression_test_dummy_variable
+?+xtf:2> print Tracing: function 2>file
+?+ZTST_execchunk:20> . ./xt.in Tracing: source
?+./xt.in:1> print Tracing: source
-?+ZTST_execchunk:2> . ./xt.in Tracing: source 2>file
+?+ZTST_execchunk:21> . ./xt.in Tracing: source 2>file
?+./xt.in:1> print Tracing: source 2>file
-?+ZTST_execchunk:2> set +x
+?+ZTST_execchunk:22> set +x
Index: Test/V01zmodload.ztst
===================================================================
RCS file: /cvsroot/zsh/zsh/Test/V01zmodload.ztst,v
retrieving revision 1.3
diff -u -r1.3 V01zmodload.ztst
--- Test/V01zmodload.ztst 2001/05/23 17:05:56 1.3
+++ Test/V01zmodload.ztst 2001/07/09 16:26:58
@@ -47,7 +47,7 @@
zmodload zsh/main
1:Test reloading an already-loaded module
-?ZTST_execchunk:zmodload:2: module zsh/main already loaded.
+?ZTST_execchunk:zmodload:1: module zsh/main already loaded.
# Loop over the modules found above and attempt to load each one. Use
# the -i flag in case dependencies cause multiple modules to be loaded,
--
Peter Stephenson <pws@csr.com> Software Engineer
CSR Ltd., Unit 300, Science Park, Milton Road,
Cambridge, CB4 0XL, UK Tel: +44 (0)1223 392070
**********************************************************************
The information transmitted is intended only for the person or
entity to which it is addressed and may contain confidential
and/or privileged material.
Any review, retransmission, dissemination or other use of, or
taking of any action in reliance upon, this information by
persons or entities other than the intended recipient is
prohibited.
If you received this in error, please contact the sender and
delete the material from any computer.
**********************************************************************
next prev parent reply other threads:[~2001-07-09 16:31 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2001-07-05 5:33 Andrej Borsenkow
2001-07-06 9:56 ` Sven Wischnowsky
2001-07-06 10:22 ` Peter Stephenson
2001-07-07 23:30 ` Bart Schaefer
2001-07-08 22:26 ` Peter Stephenson
2001-07-09 10:38 ` Peter Stephenson
2001-07-09 14:52 ` Peter Stephenson
2001-07-09 16:30 ` Peter Stephenson [this message]
2001-07-09 16:50 ` Bart Schaefer
2001-07-09 17:32 ` Peter Stephenson
2001-07-09 18:24 ` Bart Schaefer
2001-07-09 18:36 ` Peter Stephenson
2001-07-09 19:19 ` Bart Schaefer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=Tc0a88d0154a52c6a06@mailsweeper01.cambridgesiliconradio.com \
--to=pws@csr.com \
--cc=zsh-workers@sunsite.dk \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.vuxu.org/mirror/zsh/
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).