The default mode for overflow checks is
General => Strict
which causes all computations both inside and outside assertions to use the base type.
This retains compatibility with previous versions of GNAT which suppressed overflow checks by default and always used the base type for computation of intermediate results.
The
switch -gnato
(with no digits following)
is equivalent to
General => Strict
which causes overflow checking of all intermediate overflows both inside and outside assertions against the base type.
The pragma Suppress (Overflow_Check)
disables overflow
checking, but it has no effect on the method used for computing
intermediate results.
The pragma Unsuppress (Overflow_Check)
enables overflow
checking, but it has no effect on the method used for computing
intermediate results.