I checked the document that long= int64 has range more than 900,000,000,000,000
long
int64
Here is my code:
int r = 99; long test1 = r*r*r
Your second test fails because each 99 is an integer; replace it with the following and it compiles.
long test2 = 99L * 99L * 99L * 99L * 99L;
See the MSDN Long Documentation for details.