about summary refs log tree commit diff
path: root/tests/ui/pattern
diff options
context:
space:
mode:
authorLeón Orell Valerian Liehr <me@fmease.dev>2025-03-15 00:18:24 +0100
committerGitHub <noreply@github.com>2025-03-15 00:18:24 +0100
commit43c41a801aa54d7e3e7940b6c15c2dd72502b8c0 (patch)
tree7fc071377a273aa712b14627a79bc50735e7cd2f /tests/ui/pattern
parent756b17975f4e02d679034bd734b83ddcccd6a474 (diff)
parentaad1db737347b93b51a7dc45dcb6bec9e367bc02 (diff)
Rollup merge of #138460 - xizheyin:issue-138319, r=petrochenkov
Pass struct field HirId when check_expr_struct_fields

Fixes #138319

r? compiler

cc ``@Mark-Simulacrum``
Diffstat (limited to 'tests/ui/pattern')
-rw-r--r--tests/ui/pattern/check-struct-pat-fields-stability-issue-138319.rs12
-rw-r--r--tests/ui/pattern/check-struct-pat-fields-stability-issue-138319.stderr10
2 files changed, 22 insertions, 0 deletions
diff --git a/tests/ui/pattern/check-struct-pat-fields-stability-issue-138319.rs b/tests/ui/pattern/check-struct-pat-fields-stability-issue-138319.rs
new file mode 100644
index 00000000000..b951c6d92ee
--- /dev/null
+++ b/tests/ui/pattern/check-struct-pat-fields-stability-issue-138319.rs
@@ -0,0 +1,12 @@
+//@ check-pass
+struct Point {
+    #[deprecated = "x is deprecated"]
+    _x: i32,
+    _y: i32,
+}
+
+fn main() {
+    let p = Point { _x: 1, _y: 2 }; //~ WARNING use of deprecated field `Point::_x`
+    // Before fix, it report an warning
+    let Point { #[expect(deprecated)]_x, .. } = p;
+}
diff --git a/tests/ui/pattern/check-struct-pat-fields-stability-issue-138319.stderr b/tests/ui/pattern/check-struct-pat-fields-stability-issue-138319.stderr
new file mode 100644
index 00000000000..707eb58e547
--- /dev/null
+++ b/tests/ui/pattern/check-struct-pat-fields-stability-issue-138319.stderr
@@ -0,0 +1,10 @@
+warning: use of deprecated field `Point::_x`: x is deprecated
+  --> $DIR/check-struct-pat-fields-stability-issue-138319.rs:9:21
+   |
+LL |     let p = Point { _x: 1, _y: 2 };
+   |                     ^^^^^
+   |
+   = note: `#[warn(deprecated)]` on by default
+
+warning: 1 warning emitted
+