From 662d276573765f70dff70d758ca9179766b19f08 Mon Sep 17 00:00:00 2001 From: Maybe Waffle Date: Sat, 6 Apr 2024 17:18:25 +0000 Subject: [PATCH] Add regression test for issue 120600 --- tests/ui/never_type/eq-never-types.rs | 22 ++++++++++++++++++++++ tests/ui/never_type/eq-never-types.stderr | 20 ++++++++++++++++++++ 2 files changed, 42 insertions(+) create mode 100644 tests/ui/never_type/eq-never-types.rs create mode 100644 tests/ui/never_type/eq-never-types.stderr diff --git a/tests/ui/never_type/eq-never-types.rs b/tests/ui/never_type/eq-never-types.rs new file mode 100644 index 00000000000..00e55c100bd --- /dev/null +++ b/tests/ui/never_type/eq-never-types.rs @@ -0,0 +1,22 @@ +//@ known-bug: #120600 +// +// issue: rust-lang/rust#120600 + +//@ failure-status: 101 +//@ normalize-stderr-test: "DefId\(.*?\]::" -> "DefId(" +//@ normalize-stderr-test: "(?m)note: we would appreciate a bug report.*\n\n" -> "" +//@ normalize-stderr-test: "(?m)note: rustc.*running on.*\n\n" -> "" +//@ normalize-stderr-test: "(?m)note: compiler flags.*\n\n" -> "" +//@ normalize-stderr-test: "(?m)note: delayed at.*$" -> "" +//@ normalize-stderr-test: "(?m)^ *\d+: .*\n" -> "" +//@ normalize-stderr-test: "(?m)^ *at .*\n" -> "" + +#![allow(internal_features)] +#![feature(never_type, rustc_attrs)] +#![rustc_never_type_options(fallback = "never")] + +fn ice(a: !) { + a == a; +} + +fn main() {} diff --git a/tests/ui/never_type/eq-never-types.stderr b/tests/ui/never_type/eq-never-types.stderr new file mode 100644 index 00000000000..61c3f430b9a --- /dev/null +++ b/tests/ui/never_type/eq-never-types.stderr @@ -0,0 +1,20 @@ +note: no errors encountered even though delayed bugs were created + +note: those delayed bugs will now be shown as internal compiler errors + +error: internal compiler error: broken MIR in DefId(ice) (Terminator { source_info: SourceInfo { span: $DIR/eq-never-types.rs:19:5: 19:11 (#0), scope: scope[0] }, kind: _3 = ::eq(move _4, move _5) -> [return: bb1, unwind: bb2] }): bad arg #0 (&'?4 ! <- !): NoSolution + --> $DIR/eq-never-types.rs:19:10 + | +LL | a == a; + | ^ + | + + --> $DIR/eq-never-types.rs:19:10 + | +LL | a == a; + | ^ + +note: using internal features is not supported and expected to cause internal compiler errors when used incorrectly + +query stack during panic: +end of query stack