-
Notifications
You must be signed in to change notification settings - Fork 36.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Enable -fsanitize flags in Travis #12691
Comments
I'm trying to add a configure option for this in #12692 . I tested the Bitcoin test suite with various sanitizer configurations, and the Bitcoin test suite passes cleanly with the |
Since some of the sanitizers are exclusive, we could enable one of the sanitisers for each of the travis jobs that run the functional test suite? |
The thread sanitizer fails again after #13247. It could make sense to fix that issue and then set Same for the undefined sanitizer. |
fad8afa travis: Run unit tests --with-sanitizers=undefined (MarcoFalke) 0d00fd5 depends: allow CC/CXX to be overridden during configure (Cory Fields) Pull request description: See issue #12691 Tree-SHA512: 0772e8e037411cb4664270945a0fc9c0c1ed24eeaf5308460baee707868f7b700d8e740a6babb1d02bc818a8a4b71d9e33601ab2cc850ff315755fcf3d79d29e
fad8afa travis: Run unit tests --with-sanitizers=undefined (MarcoFalke) 0d00fd5 depends: allow CC/CXX to be overridden during configure (Cory Fields) Pull request description: See issue bitcoin#12691 Tree-SHA512: 0772e8e037411cb4664270945a0fc9c0c1ed24eeaf5308460baee707868f7b700d8e740a6babb1d02bc818a8a4b71d9e33601ab2cc850ff315755fcf3d79d29e # Conflicts: # .travis.yml
fad8afa travis: Run unit tests --with-sanitizers=undefined (MarcoFalke) 0d00fd5 depends: allow CC/CXX to be overridden during configure (Cory Fields) Pull request description: See issue bitcoin#12691 Tree-SHA512: 0772e8e037411cb4664270945a0fc9c0c1ed24eeaf5308460baee707868f7b700d8e740a6babb1d02bc818a8a4b71d9e33601ab2cc850ff315755fcf3d79d29e # Conflicts: # .travis.yml
fad8afa travis: Run unit tests --with-sanitizers=undefined (MarcoFalke) 0d00fd5 depends: allow CC/CXX to be overridden during configure (Cory Fields) Pull request description: See issue bitcoin#12691 Tree-SHA512: 0772e8e037411cb4664270945a0fc9c0c1ed24eeaf5308460baee707868f7b700d8e740a6babb1d02bc818a8a4b71d9e33601ab2cc850ff315755fcf3d79d29e # Conflicts: # .travis.yml
fad8afa travis: Run unit tests --with-sanitizers=undefined (MarcoFalke) 0d00fd5 depends: allow CC/CXX to be overridden during configure (Cory Fields) Pull request description: See issue bitcoin#12691 Tree-SHA512: 0772e8e037411cb4664270945a0fc9c0c1ed24eeaf5308460baee707868f7b700d8e740a6babb1d02bc818a8a4b71d9e33601ab2cc850ff315755fcf3d79d29e # Conflicts: # .travis.yml
fad8afa travis: Run unit tests --with-sanitizers=undefined (MarcoFalke) 0d00fd5 depends: allow CC/CXX to be overridden during configure (Cory Fields) Pull request description: See issue bitcoin#12691 Tree-SHA512: 0772e8e037411cb4664270945a0fc9c0c1ed24eeaf5308460baee707868f7b700d8e740a6babb1d02bc818a8a4b71d9e33601ab2cc850ff315755fcf3d79d29e # Conflicts: # .travis.yml
fad8afa travis: Run unit tests --with-sanitizers=undefined (MarcoFalke) 0d00fd5 depends: allow CC/CXX to be overridden during configure (Cory Fields) Pull request description: See issue bitcoin#12691 Tree-SHA512: 0772e8e037411cb4664270945a0fc9c0c1ed24eeaf5308460baee707868f7b700d8e740a6babb1d02bc818a8a4b71d9e33601ab2cc850ff315755fcf3d79d29e # Conflicts: # .travis.yml
fad8afa travis: Run unit tests --with-sanitizers=undefined (MarcoFalke) 0d00fd5 depends: allow CC/CXX to be overridden during configure (Cory Fields) Pull request description: See issue bitcoin#12691 Tree-SHA512: 0772e8e037411cb4664270945a0fc9c0c1ed24eeaf5308460baee707868f7b700d8e740a6babb1d02bc818a8a4b71d9e33601ab2cc850ff315755fcf3d79d29e # Conflicts: # .travis.yml
fad8afa travis: Run unit tests --with-sanitizers=undefined (MarcoFalke) 0d00fd5 depends: allow CC/CXX to be overridden during configure (Cory Fields) Pull request description: See issue bitcoin#12691 Tree-SHA512: 0772e8e037411cb4664270945a0fc9c0c1ed24eeaf5308460baee707868f7b700d8e740a6babb1d02bc818a8a4b71d9e33601ab2cc850ff315755fcf3d79d29e # Conflicts: # .travis.yml
fad8afa travis: Run unit tests --with-sanitizers=undefined (MarcoFalke) 0d00fd5 depends: allow CC/CXX to be overridden during configure (Cory Fields) Pull request description: See issue bitcoin#12691 Tree-SHA512: 0772e8e037411cb4664270945a0fc9c0c1ed24eeaf5308460baee707868f7b700d8e740a6babb1d02bc818a8a4b71d9e33601ab2cc850ff315755fcf3d79d29e # Conflicts: # .travis.yml
fad8afa travis: Run unit tests --with-sanitizers=undefined (MarcoFalke) 0d00fd5 depends: allow CC/CXX to be overridden during configure (Cory Fields) Pull request description: See issue bitcoin#12691 Tree-SHA512: 0772e8e037411cb4664270945a0fc9c0c1ed24eeaf5308460baee707868f7b700d8e740a6babb1d02bc818a8a4b71d9e33601ab2cc850ff315755fcf3d79d29e # Conflicts: # .travis.yml
fad8afa travis: Run unit tests --with-sanitizers=undefined (MarcoFalke) 0d00fd5 depends: allow CC/CXX to be overridden during configure (Cory Fields) Pull request description: See issue bitcoin#12691 Tree-SHA512: 0772e8e037411cb4664270945a0fc9c0c1ed24eeaf5308460baee707868f7b700d8e740a6babb1d02bc818a8a4b71d9e33601ab2cc850ff315755fcf3d79d29e # Conflicts: # .travis.yml
This idea is from discussion in #12686 . GCC 4.8 supports two -fsanitize flags,
-fsanitize=address
and-fsanitize=thread
(and newer versions support even more of these flags). It would be a good idea to enable these options in Travis. @sipa points out that the build still isn't completely clean when using these flags, so to add this we'd either have to fix all of the existing errors or some up with a whilelisting mechanism to grandfather the old violations.The text was updated successfully, but these errors were encountered: