ast2 fails for lzma.h in expression parser
```h
#  define INT_FAST16_MIN     (-9223372036854775807L-1)
```

Results in:

```nim
const
  INT_FAST16_MIN* = (
    -9223372036854775807'i32 - typeof(-9223372036854775807'i32)(1))
```

And Nim complains:

```
tmp/toast_1588302784.nim(13, 6) Error: number out of range: '9223372036854775807'i32'
/tmp/toast_1588302784.nim(13, 40) Error: number out of range: '9223372036854775807'i32'
```

Basically, the suffix is `L` but the size isn't really 32-bit. Go figure.

cc: @jyapayne 