On 21/02/2021 17:18, Joerg Schilling via austin-group-l at The Open Group wrote:
"Harald van Dijk via austin-group-l at The Open Group" 
<austin-group-l@opengroup.org> wrote:

That is neither what the standard says nor what shells do, though.

    case x in ( (x) echo match ;; esac

is rejected because that first '(' does change the parse state, making
the second '(' invalid.

That state change does not happen in ksh and the Bourne Shell as mentioned
before.

That state change clearly does happen and the exact example that I included and you quoted shows that it does.

$ bosh -c 'case x in ( (x) echo match ;; esac'
bosh: syntax error at line 1: `(' unexpected

$ pbosh -c 'case x in ( (x) echo match ;; esac'
pbosh: syntax error at line 1: `(' unexpected

$ ksh -c 'case x in ( (x) echo match ;; esac'
ksh: syntax error at line 1: `(' unexpected

Reply via email to