Parse a constant expression.
(parse-constant-expression parstate) → (mv erp cexpr span new-parstate)
In the grammar, a constant expression is a conditional expression. The grammar does not capture the fact that the expression must be constant, i.e. evaluatable at compile time. In our abstract syntax, a constant expression is defined, in line with the grammar, just as a wrapper of an expression; the wrapper marks the expression as intended to be in fact constant, but the check that that is the case is done elsewhere.