# UNFIXED BUG: hush thinks that ; && || & have the same precedence. # According to this doc, && || have higher precedence than ; &. # See example below. # Precedence of ; is not a problem in practice. Precedence of & is. # #http://www.opengroup.org/onlinepubs/009695399/utilities/xcu_chap02.html # #2.9.3 Lists # #An AND-OR list is a sequence of one or more pipelines separated by #the operators "&&" and "||" . # #A list is a sequence of one or more AND-OR lists separated by the operators #';' and '&' and optionally terminated by ';', '&', or . # #The operators "&&" and "||" shall have equal precedence and shall be #evaluated with left associativity. For example, both of the following #commands write solely bar to standard output: # # false && echo foo || echo bar # true || echo foo && echo bar # #A ';' or terminator shall cause the preceding AND-OR list #to be executed sequentially; an '&' shall cause asynchronous execution #of the preceding AND-OR list. echo First && sleep 0.2 && echo Third & sleep 0.1 echo Second wait echo Done