rust/tests/ui/sanitizer
Matthias Krüger fe0222be07
Rollup merge of #123005 - maurer:cfi-arbitrary-receivers, r=compiler-errors
CFI: Support complex receivers

Right now, we only support rewriting `&self` and `&mut self` into `&dyn MyTrait` and `&mut dyn MyTrait`. This expands it to handle the full gamut of receivers by calculating the receiver based on *substitution* rather than based on a rewrite. This means that, for example, `Arc<Self>` will become `Arc<dyn MyTrait>` appropriately with this change.

This approach also allows us to support associated type constraints as well, so we will correctly rewrite `&self` into `&dyn MyTrait<T=i32>`, for example.

r? ```@workingjubilee```
2024-03-25 11:00:14 +01:00
..
address.rs
badfree.rs
cfg-kasan.rs
cfg.rs
cfi-canonical-jump-tables-requires-cfi.rs
cfi-canonical-jump-tables-requires-cfi.stderr
cfi-closure-fn-ptr-cast.rs CFI: Skip non-passed arguments 2024-03-21 22:26:26 +00:00
cfi-complex-receiver.rs CFI: Support arbitrary receivers 2024-03-24 22:46:48 +00:00
cfi-drop-no-principal.rs CFI: Handle dyn with no principal 2024-03-24 16:58:33 +00:00
cfi-generalize-pointers-attr-cfg.rs
cfi-generalize-pointers-requires-cfi.rs
cfi-generalize-pointers-requires-cfi.stderr
cfi-invalid-attr-cfi-encoding.rs
cfi-invalid-attr-cfi-encoding.stderr
cfi-is-incompatible-with-kcfi.aarch64.stderr
cfi-is-incompatible-with-kcfi.rs
cfi-is-incompatible-with-kcfi.x86_64.stderr
cfi-normalize-integers-attr-cfg.rs
cfi-normalize-integers-requires-cfi.rs
cfi-normalize-integers-requires-cfi.stderr
cfi-requires-lto.rs
cfi-requires-lto.stderr
cfi-self-ref.rs CFI: Support self_cell-like recursion 2024-03-22 23:02:05 +00:00
cfi-virtual-auto.rs CFI: Strip auto traits off Self for virtual calls 2024-03-23 18:30:45 +00:00
cfi-with-rustc-lto-requires-single-codegen-unit.rs
cfi-with-rustc-lto-requires-single-codegen-unit.stderr
crt-static.rs
crt-static.stderr
dataflow-abilist.txt
dataflow.rs
hwaddress.rs
incompatible.rs
incompatible.stderr
inline-always.rs
inline-always.stderr
issue-72154-address-lifetime-markers.rs
issue-111184-cfi-coroutine-witness.rs
issue-114275-cfi-const-expr-in-arry-len.rs
leak.rs
memory-eager.rs
memory-passing.rs
memory.rs
new-llvm-pass-manager-thin-lto.rs
split-lto-unit-requires-lto.rs
split-lto-unit-requires-lto.stderr
thread.rs
unsupported-target.rs
unsupported-target.stderr
use-after-scope.rs