Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Bug or misundertanding from my part?

    Hi all :)

    In the ZSH manual for 4.2.5 we can read:

{ TRY-LIST } always { ALWAYS-LIST }
     First execute TRY-LIST.  Regardless of errors, or break, continue,
     or return commands encountered within TRY-LIST, execute
     ALWAYS-LIST.  Execution then continues from the result of the
     execution of TRY-LIST; in other words, any error, or break,
     continue, or return command is treated in the normal way, as if
     ALWAYS-LIST were not present.  The two chunks of code are referred
     to as the `try block' and the `always block'.

    So, this code should print "try list" and "always list", but it

    emulate -L zsh

        print "try list"
        return 13
    } always {
        print "always list"
        return 0

    print "What?"

    The code above just prints "try list" and exits with a return
code of "13", but the manual says that the ALWAYS-LIST is executed
"Regardless of [...] return commands encountered [...]". Am I doing
something wrong? I'm a bit puzzled because the above works if I
change 'return 13' for 'false'.

    Thanks a lot in advance :)
    Raúl Núñez de Arenas Coronado

Linux Registered User 88736 | http://www.dervishd.net
http://www.pleyades.net & http://www.gotesdelluna.net
It's my PC and I'll cry if I want to...

Messages sorted by: Reverse Date, Date, Thread, Author