1
0
mirror of https://gitlab.gnome.org/GNOME/libxml2.git synced 2024-10-27 04:55:04 +03:00
libxml2/.travis.yml
Nick Wellnhofer db0c0450db Enable more undefined behavior sanitizers
Minor fix to xmlStringLenGetNodeList to avoid a pointer overflow
during API test.

Enable pointer-overflow and unsigned-integer-overflow sanitizers in CI
tests. Technically, unsigned integer overflows aren't undefined
behavior, but they typically indicate programming errors. Some hash
functions that really require unsigned integer overflows have already
been annotated.
2019-11-02 17:53:23 +01:00

24 lines
790 B
YAML

language: c
sudo: false
addons:
apt:
packages:
# Some tests require the DTDs.
w3c-sgml-lib
matrix:
include:
# Try to emulate a C89 compiler on a POSIX system by disabling as many
# GNU extensions as possible.
- compiler: gcc
env: CFLAGS="-O2 -std=c89 -D_XOPEN_SOURCE=700 -Werror -Wno-error=array-bounds"
# clang with AddressSanitizer and UndefinedBehaviorSanitizer.
- compiler: clang
sudo: required
dist: trusty
env: CONFIG="--without-python"
CFLAGS="-O2 -g -fno-omit-frame-pointer -fsanitize=address,undefined,unsigned-integer-overflow -fno-sanitize-recover=all -Werror -Wno-error=cast-align"
UBSAN_OPTIONS=print_stacktrace=1
script: sh autogen.sh $CONFIG && make -j2 V=1 && make check
git:
depth: 10