Subject: bug#22420: Zsh test failure

From: Leo Famulari <[email-masked]>
Date: Fri, 22 Jan 2016 14:33:44 -0500

On Fri, Jan 22, 2016 at 06:47:29PM +0100, Ludovic Courtès wrote:
> Leo Famulari <[email-masked]> skribis:
> 
> >> > I have confirmed the failure is in 'Test/B02typeset.ztst'.
> >> 
> >> Could you post the relevant part of the build log?
> >
> > Here is the verbose output of only the B02 test:
> > http://paste.debian.net/367077/
> 
> It finishes with:
> 
> --8<---------------cut here---------------start------------->8---
> 2221 Test successful.                                                                                                 
> 2222 ZTST_test: looking for new test                                                                                  
> 2223 ZTST_test: examining line:                                                                                       
> 2224                                                                                                                  
> 2225 ZTST_test: all tests successful                                                                                  
> 2226 ./ztst.zsh:550: unmatched "                                                                                      
> --8<---------------cut here---------------end--------------->8---
> 
> Could it be that the unmatched " is the root cause?  I don’t see any
> clear sign of an error or failure other than that.
> 
> Could you check what’s in that file on line 550?

It's only 543 lines long! :o

I guess I'll try tracing the script.

I thought that perhaps it was referring to B02typeset.ztst, but I don't
think there is anything related in that area of the file:
540   (
541   setopt glob
542   mkdir -p arrayglob
543   touch arrayglob/{one,two,three,four,five,six,seven}
544   fn() {
545     typeset array=(arrayglob/[tf]*)
546     print -l ${array:t}
547     #
548     typeset {first,second,third}=the_same_value array=(
549     extends
550     over
551     multiple
552     lines
553     )
554     print -l $first $second $third "$array"
555     #
556     integer i=$(echo 1 + 2 + 3 + 4)
557     print $i
558     #
559     # only noted by accident this was broken..
560     # we need to turn off special recognition
561     # of assignments within assignments...
562     typeset careful=( i=1 j=2 k=3 )
563     print -l $careful
564   }

> My 2¢.
> Ludo’.