> See this comment

This works fine: `int[5000000000] data;` on my 32-bit system.

> Just using toInterger will print incorrect diagnostic message, even it is rare case.

I don't see how, with a static array we know dim is an integer literal size_t.