mirror of
https://github.com/rust-lang/rust.git
synced 2026-04-27 18:57:42 +03:00
add test for issue 135289
This commit is contained in:
@@ -0,0 +1,13 @@
|
||||
// Helper for test tests/ui/resolve/const-with-typo-in-pattern-binding-ice-135289.rs
|
||||
|
||||
//@ edition: 2018
|
||||
|
||||
#[macro_export]
|
||||
macro_rules! assert_matches {
|
||||
( $e:expr , $($pat:pat)|+ ) => {
|
||||
match $e {
|
||||
$($pat)|+ => (),
|
||||
_ => (),
|
||||
}
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
// This is a non-regression test for issue 135289, where the "const with typo in pattern" diagnostic
|
||||
// caused an ICE when unexpectedly pretty printing a type for unreachable arms via a macro defined
|
||||
// in a dependency.
|
||||
|
||||
#![warn(unreachable_patterns)] // needed to reproduce the ICE described in #135289
|
||||
|
||||
//@ check-pass
|
||||
//@ aux-build: fake_matches.rs
|
||||
extern crate fake_matches;
|
||||
|
||||
const _A: u64 = 0;
|
||||
pub fn f() -> u64 {
|
||||
0
|
||||
}
|
||||
fn main() {
|
||||
fake_matches::assert_matches!(f(), _non_existent);
|
||||
}
|
||||
Reference in New Issue
Block a user