diff options
| author | bors <bors@rust-lang.org> | 2022-02-13 00:14:52 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2022-02-13 00:14:52 +0000 |
| commit | 5c30d6568383916ce97cdf20ceb61a8b9e5bb5a8 (patch) | |
| tree | f46d936ef6bc64bd6f032bca84e9711a0e572d7b /compiler/rustc_llvm/llvm-wrapper/RustWrapper.cpp | |
| parent | 3cfa4def7c87d571bd46d92fed608edf8fad236e (diff) | |
| parent | 401307759aaf6f1e49c8a2c840a76ae41ec1f865 (diff) | |
| download | rust-5c30d6568383916ce97cdf20ceb61a8b9e5bb5a8.tar.gz rust-5c30d6568383916ce97cdf20ceb61a8b9e5bb5a8.zip | |
Auto merge of #93670 - erikdesjardins:noundef, r=nikic
Apply noundef attribute to &T, &mut T, Box<T>, bool This doesn't handle `char` because it's a bit awkward to distinguish it from `u32` at this point in codegen. Note that this _does not_ change whether or not it is UB for `&`, `&mut`, or `Box` to point to undef. It only applies to the pointer itself, not the pointed-to memory. Fixes (partially) #74378. r? `@nikic` cc `@RalfJung`
Diffstat (limited to 'compiler/rustc_llvm/llvm-wrapper/RustWrapper.cpp')
| -rw-r--r-- | compiler/rustc_llvm/llvm-wrapper/RustWrapper.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/compiler/rustc_llvm/llvm-wrapper/RustWrapper.cpp b/compiler/rustc_llvm/llvm-wrapper/RustWrapper.cpp index d871290744f..fb9c5e6a527 100644 --- a/compiler/rustc_llvm/llvm-wrapper/RustWrapper.cpp +++ b/compiler/rustc_llvm/llvm-wrapper/RustWrapper.cpp @@ -224,6 +224,8 @@ static Attribute::AttrKind fromRust(LLVMRustAttribute Kind) { return Attribute::StackProtectStrong; case StackProtect: return Attribute::StackProtect; + case NoUndef: + return Attribute::NoUndef; } report_fatal_error("bad AttributeKind"); } |
