On Di, 24 Jan 2017, Christian Brabandt wrote:

> On Di, 24 Jan 2017, Dominique Pellé wrote:
> > How about an address sanitizer build in Travis to catch
> > this kind of bugs earlier in CI?

Here is a patch.

Sample logfiles here:
https://travis-ci.org/chrisbra/vim/builds/194982196
This was with patch 8.0.225 which did abort on the mentioned test:
https://s3.amazonaws.com/archive.travis-ci.org/jobs/194982204/log.txt

Best,
Christian
-- 
Die Kirche hat nicht den Auftrag, die Welt zu verändern. Wenn sie aber
ihren Auftrag erfüllt, verändert sich die Welt.
                -- Carl Friedrich von Weizsäcker

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.
From 697693b736dcfa834c2ad5c8f63ef0399f117149 Mon Sep 17 00:00:00 2001
From: Christian Brabandt <[email protected]>
Date: Tue, 24 Jan 2017 21:40:18 +0100
Subject: [PATCH 1/2] Add ASAN builds

---
 .travis.yml | 21 ++++++++++++++++++++-
 1 file changed, 20 insertions(+), 1 deletion(-)

diff --git a/.travis.yml b/.travis.yml
index 543b033f6..4a33279db 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -18,13 +18,18 @@ env:
     # Mac OSX build
   - BUILD=yes TEST=test COVERAGE=no FEATURES=huge SHADOWOPT= SRCDIR=./src CHECK_AUTOCONF=no
     "CONFOPT='--enable-perlinterp --enable-pythoninterp --enable-rubyinterp --enable-luainterp'"
+    # ASAN build
+  - BUILD=yes TEST=test SANITIZER_CFLAGS="-g -O0 -fsanitize=address -fno-omit-frame-pointer" FEATURES=huge SRCDIR=./src
+    "CONFOPT='--enable-perlinterp --enable-pythoninterp --enable-rubyinterp --enable-luainterp'"
+  - BUILD=yes TEST=test SANITIZER_CFLAGS="-g -O0 -fsanitize=undefined -fno-omit-frame-pointer" FEATURES=huge SRCDIR=./src
+    "CONFOPT='--enable-perlinterp --enable-pythoninterp --enable-rubyinterp --enable-luainterp'"
 
 sudo: false
 
 git:
   depth: 1
 
-# instead of a 6*2*2 matrix (2*os + 2*compiler + 6*env),
+# instead of a 8*2*2 matrix (2*os + 2*compiler + 8*env),
 # exclude some builds on mac os x and linux
 # linux: 2*compiler + 5*env + mac: 2*compiler + 2*env
 matrix:
@@ -38,6 +43,12 @@ matrix:
     - os: osx
       env: BUILD=yes TEST=scripttests COVERAGE=yes CFLAGS=--coverage LDFLAGS=--coverage FEATURES=huge SHADOWOPT= SRCDIR=./src CHECK_AUTOCONF=no
             "CONFOPT='--enable-perlinterp --enable-pythoninterp --enable-python3interp --enable-rubyinterp --enable-luainterp'"
+    - os: osx
+      env: BUILD=yes TEST=test SANITIZER_CFLAGS="-g -O0 -fsanitize=address -fno-omit-frame-pointer" FEATURES=huge SRCDIR=./src
+            "CONFOPT='--enable-perlinterp --enable-pythoninterp --enable-rubyinterp --enable-luainterp'"
+    - os: osx
+      env: BUILD=yes TEST=test SANITIZER_CFLAGS="-g -O0 -fsanitize=undefined -fno-omit-frame-pointer" FEATURES=huge SRCDIR=./src
+            "CONFOPT='--enable-perlinterp --enable-pythoninterp --enable-rubyinterp --enable-luainterp'"
     - os: linux
       compiler: clang
       env: BUILD=no TEST=unittests COVERAGE=yes CFLAGS=--coverage LDFLAGS=--coverage FEATURES=huge SHADOWOPT= SRCDIR=./src CHECK_AUTOCONF=yes
@@ -45,6 +56,14 @@ matrix:
       compiler: clang
       env: BUILD=yes TEST=test COVERAGE=no FEATURES=small CONFOPT= SHADOWOPT= SRCDIR=./src CHECK_AUTOCONF=no
     - os: linux
+      compiler: gcc
+      env: BUILD=yes TEST=test SANITIZER_CFLAGS="-g -O0 -fsanitize=address -fno-omit-frame-pointer" FEATURES=huge SRCDIR=./src
+            "CONFOPT='--enable-perlinterp --enable-pythoninterp --enable-rubyinterp --enable-luainterp'"
+    - os: linux
+      compiler: gcc
+      env: BUILD=yes TEST=test SANITIZER_CFLAGS="-g -O0 -fsanitize=undefined -fno-omit-frame-pointer" FEATURES=huge SRCDIR=./src
+            "CONFOPT='--enable-perlinterp --enable-pythoninterp --enable-rubyinterp --enable-luainterp'"
+    - os: linux
       env: BUILD=yes TEST=test COVERAGE=no FEATURES=huge SHADOWOPT= SRCDIR=./src CHECK_AUTOCONF=no
             "CONFOPT='--enable-perlinterp --enable-pythoninterp --enable-rubyinterp --enable-luainterp'"
 
-- 
2.11.0

Raspunde prin e-mail lui