diff --git a/compiler/rustc_mir_build/src/thir/pattern/const_to_pat.rs b/compiler/rustc_mir_build/src/thir/pattern/const_to_pat.rs index 4a50bbca06674..3c0dec64693fe 100644 --- a/compiler/rustc_mir_build/src/thir/pattern/const_to_pat.rs +++ b/compiler/rustc_mir_build/src/thir/pattern/const_to_pat.rs @@ -413,8 +413,8 @@ impl<'a, 'tcx> ConstToPat<'a, 'tcx> { ty::FnPtr(..) | ty::RawPtr(..) => { if self.include_lint_checks && !self.saw_const_match_error.get() { self.saw_const_match_error.set(true); - let msg = "function pointers and unsized pointers in patterns do not behave \ - deterministically. \ + let msg = "function pointers and unsized pointers in patterns behave \ + unpredictably and should not be relied upon. \ See https://github.com/rust-lang/rust/issues/70861 for details."; tcx.struct_span_lint_hir( lint::builtin::POINTER_STRUCTURAL_MATCH, diff --git a/src/test/ui/issues/issue-44333.rs b/src/test/ui/issues/issue-44333.rs index 85f5ccbdb6561..96e8795e52d56 100644 --- a/src/test/ui/issues/issue-44333.rs +++ b/src/test/ui/issues/issue-44333.rs @@ -16,9 +16,9 @@ const BAR: Func = bar; fn main() { match test(std::env::consts::ARCH.len()) { - FOO => println!("foo"), //~ WARN pointers in patterns do not behave deterministically + FOO => println!("foo"), //~ WARN pointers in patterns behave unpredictably //~^ WARN will become a hard error - BAR => println!("bar"), //~ WARN pointers in patterns do not behave deterministically + BAR => println!("bar"), //~ WARN pointers in patterns behave unpredictably //~^ WARN will become a hard error _ => unreachable!(), } diff --git a/src/test/ui/issues/issue-44333.stderr b/src/test/ui/issues/issue-44333.stderr index a9ee5fc4dd7b1..8302b09e5334d 100644 --- a/src/test/ui/issues/issue-44333.stderr +++ b/src/test/ui/issues/issue-44333.stderr @@ -1,4 +1,4 @@ -warning: function pointers and unsized pointers in patterns do not behave deterministically. See https://github.com/rust-lang/rust/issues/70861 for details. +warning: function pointers and unsized pointers in patterns behave unpredictably and should not be relied upon. See https://github.com/rust-lang/rust/issues/70861 for details. --> $DIR/issue-44333.rs:19:9 | LL | FOO => println!("foo"), @@ -12,7 +12,7 @@ LL | #![warn(pointer_structural_match)] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! = note: for more information, see issue #62411 -warning: function pointers and unsized pointers in patterns do not behave deterministically. See https://github.com/rust-lang/rust/issues/70861 for details. +warning: function pointers and unsized pointers in patterns behave unpredictably and should not be relied upon. See https://github.com/rust-lang/rust/issues/70861 for details. --> $DIR/issue-44333.rs:21:9 | LL | BAR => println!("bar"), diff --git a/src/test/ui/rfc1445/issue-63479-match-fnptr.rs b/src/test/ui/rfc1445/issue-63479-match-fnptr.rs index 0984b1d480ecb..567685950e9e4 100644 --- a/src/test/ui/rfc1445/issue-63479-match-fnptr.rs +++ b/src/test/ui/rfc1445/issue-63479-match-fnptr.rs @@ -33,7 +33,7 @@ fn main() { let s = B(my_fn); match s { B(TEST) => println!("matched"), - //~^ WARN pointers in patterns do not behave deterministically + //~^ WARN pointers in patterns behave unpredictably //~| WARN this was previously accepted by the compiler but is being phased out _ => panic!("didn't match") }; diff --git a/src/test/ui/rfc1445/issue-63479-match-fnptr.stderr b/src/test/ui/rfc1445/issue-63479-match-fnptr.stderr index 34b9c359ca856..8cf87cc85a1d4 100644 --- a/src/test/ui/rfc1445/issue-63479-match-fnptr.stderr +++ b/src/test/ui/rfc1445/issue-63479-match-fnptr.stderr @@ -1,4 +1,4 @@ -warning: function pointers and unsized pointers in patterns do not behave deterministically. See https://github.com/rust-lang/rust/issues/70861 for details. +warning: function pointers and unsized pointers in patterns behave unpredictably and should not be relied upon. See https://github.com/rust-lang/rust/issues/70861 for details. --> $DIR/issue-63479-match-fnptr.rs:35:7 | LL | B(TEST) => println!("matched"),