]> git.lizzy.rs Git - rust.git/commit
Diagnose use of incompatible sanitizers
authorTomasz Miąsko <tomasz.miasko@gmail.com>
Sun, 14 Jun 2020 00:00:00 +0000 (00:00 +0000)
committerTomasz Miąsko <tomasz.miasko@gmail.com>
Sun, 14 Jun 2020 16:14:10 +0000 (18:14 +0200)
commit0a65f280c8eac844a74b758822ca52e8763a1d5d
treea4a7aa5d08d23949e47679f352a5861da3ecf6c3
parent4fb54ed484e2239a3e9eff3be17df00d2a162be3
Diagnose use of incompatible sanitizers

Emit an error when incompatible sanitizer are configured through command
line options. Previously the last one configured prevailed and others
were silently ignored.

Additionally use a set to represent configured sanitizers, making it
possible to enable multiple sanitizers at once. At least in principle,
since currently all of them are considered to be incompatible with
others.
23 files changed:
Cargo.lock
src/doc/unstable-book/src/compiler-flags/sanitizer.md
src/librustc_codegen_llvm/attributes.rs
src/librustc_codegen_llvm/back/write.rs
src/librustc_codegen_llvm/base.rs
src/librustc_codegen_llvm/llvm/ffi.rs
src/librustc_codegen_ssa/back/link.rs
src/librustc_codegen_ssa/back/symbol_export.rs
src/librustc_codegen_ssa/back/write.rs
src/librustc_interface/tests.rs
src/librustc_middle/middle/codegen_fn_attrs.rs
src/librustc_mir/transform/inline.rs
src/librustc_session/Cargo.toml
src/librustc_session/config.rs
src/librustc_session/lib.rs
src/librustc_session/options.rs
src/librustc_session/session.rs
src/librustc_typeck/collect.rs
src/rustllvm/PassWrapper.cpp
src/test/ui/sanitize/incompatible.rs [new file with mode: 0644]
src/test/ui/sanitize/incompatible.stderr [new file with mode: 0644]
src/test/ui/sanitize/unsupported-target.rs
src/test/ui/sanitize/unsupported-target.stderr