If I change the table to [int64, int64], Nim still gives type errors when the constants are changed to u32, even though it can promote uint32 to int64. i32 constants still work.
Also, I don't understand your reasoning about uint32 not fitting into an int on 32-bit machines. If I am compiling on a machine where int is 64 bits (I am), then doesn't int mean exactly the same thing as int64? I guess what I'm getting at is, does a program that compiles+runs on a 64-bit machine where int is 64-bits also have to compile+run correctly on a 32-bit machine, where int is 32-bits? It doesn't seem possible unless int is restricted to 32 bits in both cases.
