Victor said:
You again are missing the point. 'long long' is not an introduction of
a new keyword, it's a correction in the grammar.
?It is a new type.
However, int64 or
any other name that you can come up with for a fixed-size type would be
an introduction of a new keyword. Do you propose to have 'long char' or
'short char' to designate 32-bit or 8-bit types?
? No. How did you reach such a conclusion. What I propose is:
int16 is introduced and is an exact 16-bit type (of course additional
padding bits are allowed). int and short become equivalent of it.
That is, signed int16, int16, signed, signed int, int, signed short,
short to be all equivalent. The same for the unsigned equivalents. That
is unsigned int16 to be the same as unsigned int and unsigned, etc.
int32 is introduced and holds exactly 32-bit values. long becomes
another name of it, as was the case with the above.
signed int32, int32, signed long, long are all the same.
int64 is introduced and holds 64-bit values. signed int64 is equivalent
and unsigned int64 is the unsigned type.
So we can say:
int64 x;
int32 *p = new int32[10];
long *pp = p;
etc.