On 27 Jun 2018, at 14:57, Chet Ramey wrote:

> On 6/27/18 6:59 AM, Piotr Grzybowski wrote:
> 
>> +function_newline_list: '(' ')' | function_newline_list '\n'
>> +       ;
>> +
> 
> This would appear to allow constructs like
> 
> foo()
> () ()
> {
>       function body
> }

only by the look of things ;-) (thats what I meant in P.S.) actually those 
tokens are not allowed:

bash-5.0$ cat /tmp/m.sh
foo()
() ()
{
        function body
}

bash-5.0$ . /tmp/m.sh
bash: /tmp/m.sh: line 2: syntax error near unexpected token `)'
bash: /tmp/m.sh: line 2: `() ()'

 I am sure function_newline_list can be rewritten in a better way though.

cheers,
pg



Reply via email to