I think that will not work, as the large integer literal, although it does not give any warning, will be truncated to a floating-point value of approximately 3.40282366920938e+038. Likewise, your "++" will stall when the signifcand gets too large that adding 1 will not change the value at all.
Try it with a high-precision integer package like use bigint.