UndefinedBehaviorSanitizer (aka UBSan) modifies the program at compile-time to
catch various kinds of undefined behavior during program execution.
-Different sanitize options (:switch:`-fsanitize=alignment,float-cast-overflow,signed-integer-overflow``)
+Different sanitize options (:switch:`-fsanitize=alignment,float-cast-overflow,signed-integer-overflow`)
detect the following types of problems:
* Wrong alignment
Int := Integer (Flt); -- Overflow
end Float_Cast_Overflow;
- If the code is built with the :switch:`-fsanitize=float-cast-overflow` and
- :switch:`-g` options, the following error is shown at execution time.
+ If the code is built with the :switch:`-fsanitize=float-cast-overflow` and
+ :switch:`-g` options, the following error is shown at execution time.
::
UndefinedBehaviorSanitizer (aka UBSan) modifies the program at compile-time to
catch various kinds of undefined behavior during program execution.
-Different sanitize options (@code{-fsanitize=alignment,float-cast-overflow,signed-integer-overflow`})
+Different sanitize options (@code{-fsanitize=alignment,float-cast-overflow,signed-integer-overflow})
detect the following types of problems:
@quotation
-@quotation
-
@example
procedure Float_Cast_Overflow is
Flt : Float := Float'Last with Export;
float_cast_overflow.adb:5:20: runtime error: 3.40282e+38 is outside the range of representable values of type 'integer'
@end example
@end quotation
-@end quotation
@end itemize
@c -- Non-breaking space in running text
@printindex ge
-@anchor{d2}@w{ }
@anchor{gnat_ugn/gnat_utility_programs switches-related-to-project-files}@w{ }
+@anchor{d2}@w{ }
@c %**end of body
@bye