Disable some sanitizer checks without PEDANTIC
authorEmilia Kasper <emilia@openssl.org>
Fri, 8 Apr 2016 16:55:28 +0000 (18:55 +0200)
committerEmilia Kasper <emilia@openssl.org>
Sat, 9 Apr 2016 23:50:45 +0000 (01:50 +0200)
commitcdbf577973a76a0627debb5105f46d6f4509c39e
tree6364727252f4076a71e3bd3111ca4c4ad3edceec
parent50eadf2a242468a9552fc770cb7e5ebfd89c6bb1
Disable some sanitizer checks without PEDANTIC

Code without PEDANTIC has intentional "undefined" behaviour. To get best
coverage for both PEDANTIC and non-PEDANTIC codepaths, run the sanitizer
builds in two different configurations:
1) Without PEDANTIC but with alignment checks disabled.
2) With PEDANTIC.

To not overload Travis too much, run one build with clang and the other
with gcc (chosen at random).

Also remove a micro-optimization in CAST code to be able to
-fsanitize=shift. Whether shift sanitization is meaningful for crypto or
an obstacle is debatable but since this appears to be the only offender,
we might as well keep the check for now.

Reviewed-by: Richard Levitte <levitte@openssl.org>
.travis.yml
crypto/cast/cast_lcl.h