Bad expression rendered by exprparser
```c
#define SX_NEAR_ZERO (1.0f / (float)(1 << 28))
```
Results in
```nim
const
  SX_NEAR_ZERO* = (typeof(1.0'f64)(1.0'f64 /
      typeof(1.0'f64)(cast[cfloat]((1 shl typeof(1.0'f64)(28))))))
```
This fails since there's no `shl` for int and float.

Found in https://github.com/septag/rizz.

cc @jyapayne 