Type Expression Grammar

type‑expr → prefix‑type‑expr
prefix‑type‑expr → const postfix‑type‑expr | postfix‑type‑expr
postfix‑type‑expr → primary‑type‑expr (. id | * | && | & | [ expression? ])*
primary‑type‑expr → basic‑type | template‑id | id