64-bit enum

This ends up being a bad idea for a few reasons, and unnecessary for another. Having different sized enums on different platforms is pretty terrible, and is likely a breaking change.

Additionally, it a waste of memory in the 99% of situations where it is unnecessary. I personally don't want my 3-4 item enums to inflate the size of my PODs for the 1% case.

That said, it isn't that big of a deal, since you are totally welcome to specify the size of your enum as of C++11. Simply:

enum Foo : uint64_t {A,B,C};
enum Bar : __int128_t {D,E,F};