summary refs log tree commit diff
path: root/library/alloc/src
diff options
context:
space:
mode:
authorfee1-dead <ent3rm4n@gmail.com>2022-12-28 15:51:41 +0800
committerGitHub <noreply@github.com>2022-12-28 15:51:41 +0800
commit8b3d0c4cf9f8a8b77805ee5b9bcd18d02c600f22 (patch)
treeedb8aa0163dff07b1f20503b4e3eeedc7a3104dd /library/alloc/src
parentade9605a0843268ec7af416c0aa5b5a510541c7a (diff)
parentb656e2413022de1863b9ea8db87454477b816042 (diff)
downloadrust-8b3d0c4cf9f8a8b77805ee5b9bcd18d02c600f22.tar.gz
rust-8b3d0c4cf9f8a8b77805ee5b9bcd18d02c600f22.zip
Rollup merge of #105484 - nbdd0121:upcast, r=compiler-errors
Implement allow-by-default `multiple_supertrait_upcastable` lint

The lint detects when an object-safe trait has multiple supertraits.

Enabled in libcore and liballoc as they are low-level enough that many embedded programs will use them.

r? `@nikomatsakis`
Diffstat (limited to 'library/alloc/src')
-rw-r--r--library/alloc/src/lib.rs2
1 files changed, 2 insertions, 0 deletions
diff --git a/library/alloc/src/lib.rs b/library/alloc/src/lib.rs
index b7d5c5c2437..fb1664ba7a2 100644
--- a/library/alloc/src/lib.rs
+++ b/library/alloc/src/lib.rs
@@ -87,6 +87,7 @@
 #![warn(missing_debug_implementations)]
 #![warn(missing_docs)]
 #![allow(explicit_outlives_requirements)]
+#![cfg_attr(not(bootstrap), warn(multiple_supertrait_upcastable))]
 //
 // Library features:
 #![feature(alloc_layout_extra)]
@@ -190,6 +191,7 @@
 #![feature(unsized_fn_params)]
 #![feature(c_unwind)]
 #![feature(with_negative_coherence)]
+#![cfg_attr(not(bootstrap), feature(multiple_supertrait_upcastable))]
 //
 // Rustdoc features:
 #![feature(doc_cfg)]