summaryrefslogtreecommitdiffstats
path: root/src/test/ui/lang-items/lang-item-generic-requirements.rs
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:19:13 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:19:13 +0000
commit218caa410aa38c29984be31a5229b9fa717560ee (patch)
treec54bd55eeb6e4c508940a30e94c0032fbd45d677 /src/test/ui/lang-items/lang-item-generic-requirements.rs
parentReleasing progress-linux version 1.67.1+dfsg1-1~progress7.99u1. (diff)
downloadrustc-218caa410aa38c29984be31a5229b9fa717560ee.tar.xz
rustc-218caa410aa38c29984be31a5229b9fa717560ee.zip
Merging upstream version 1.68.2+dfsg1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/test/ui/lang-items/lang-item-generic-requirements.rs')
-rw-r--r--src/test/ui/lang-items/lang-item-generic-requirements.rs59
1 files changed, 0 insertions, 59 deletions
diff --git a/src/test/ui/lang-items/lang-item-generic-requirements.rs b/src/test/ui/lang-items/lang-item-generic-requirements.rs
deleted file mode 100644
index 3d33adf68..000000000
--- a/src/test/ui/lang-items/lang-item-generic-requirements.rs
+++ /dev/null
@@ -1,59 +0,0 @@
-// Checks that declaring a lang item with the wrong number of generic arguments errors rather than
-// crashing (issue #83474, #83893, #87573, part of #9307, #79559).
-
-#![feature(lang_items, no_core)]
-#![no_core]
-
-#[lang = "sized"]
-trait MySized {}
-
-#[lang = "add"]
-trait MyAdd<'a, T> {}
-//~^^ ERROR: `add` language item must be applied to a trait with 1 generic argument [E0718]
-
-#[lang = "drop_in_place"]
-//~^ ERROR `drop_in_place` language item must be applied to a function with at least 1 generic
-fn my_ptr_drop() {}
-
-#[lang = "index"]
-trait MyIndex<'a, T> {}
-//~^^ ERROR: `index` language item must be applied to a trait with 1 generic argument [E0718]
-
-#[lang = "phantom_data"]
-//~^ ERROR `phantom_data` language item must be applied to a struct with 1 generic argument
-struct MyPhantomData<T, U>;
-
-#[lang = "owned_box"]
-//~^ ERROR `owned_box` language item must be applied to a struct with at least 1 generic argument
-struct Foo;
-
-// When the `start` lang item is missing generics very odd things can happen, especially when
-// it comes to cross-crate monomorphization
-#[lang = "start"]
-//~^ ERROR `start` language item must be applied to a function with 1 generic argument [E0718]
-fn start(_: *const u8, _: isize, _: *const *const u8) -> isize {
- 0
-}
-
-fn ice() {
- // Use add
- let r = 5;
- let a = 6;
- r + a;
-
- // Use drop in place
- my_ptr_drop();
-
- // Use index
- let arr = [0; 5];
- let _ = arr[2];
-
- // Use phantomdata
- let _ = MyPhantomData::<(), i32>;
-
- // Use Foo
- let _: () = Foo;
-}
-
-// use `start`
-fn main() {}