text: Title: Variable nodes with nested variables report a parsing error, but work properly in the runtime
  Body: ### Context
  We have a rule in Robocop that parses non-local variables and checks if they are written in uppercase. I realized recently (thanks to the https://github.com/MarketSquare/robotframework-robocop/issues/678) that we should exclude nested variables from the check, so that `${VAR${nested}}` would not report a rule violation.
  
  ### The bug
  I realized that correct variables are marked with an error by RF Parsing API. For example, this code, run with `robot --variable var1:1 test.robot`:
  
  ```
  *** Variables ***
  ${var${1}}    1
  
  *** Test Cases ***
  My Test
      Log To Console    ${var${1}}
  ```
  
  executes with PASS state.
  
  But when parsing the variable node, I see that there is an error there:
  
  <img width="537" alt="Screenshot 2023-04-02 at 20 03 57" src="https://user-images.githubusercontent.com/7412964/229370842-f4042925-9b7e-4313-af3f-5d6b2582ec3b.png">
  
  The bug appears in RF 5 and 6. I haven't tested for earlier versions.
  
  Here are some more examples that raise the same error for RF Parsing API:
  
  ```
  ${MY_VAR${var}}  11
  ${MY VAR${VAR}}  11
  ${${var}MY VAR${VAR}}  11
  ${${var${VAR}}MY VAR${VAR}}  11
  ${@{VAR}[1]MY_VAR&{var.param}}  11
  ${${var${VAR}}my_var}  11
  ${${VAR}my_var}  11
  ${${VAR}my_var${var}}  11
  ${@{VAR}[1]my_var}  11
  ${@{VAR}[1]my_var&{var.param}}  11
  ```