The following variable syntax is legal, but is not highlighted correctly:
${Varname[${OtherVarName[$index]}]}
Here's an example of the current highlighting (note that it "loses" the parent variable at the first "}" encountered):

I wonder if defining a separate variable type for arrays would help?