diff options
| author | Matthias Krüger <matthias.krueger@famsik.de> | 2024-04-30 06:43:42 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-04-30 06:43:42 +0200 |
| commit | ea3d99eaa8f969f778be8f40f0a538430442b8d8 (patch) | |
| tree | 833c8cc40182ae090dc26961af46bcdce48f2dee /src | |
| parent | f4c9f29f276308cad88f221084a2e0cb1ffeefec (diff) | |
| parent | f06e0f783793ab5592b6799876d9329b1490bc30 (diff) | |
| download | rust-ea3d99eaa8f969f778be8f40f0a538430442b8d8.tar.gz rust-ea3d99eaa8f969f778be8f40f0a538430442b8d8.zip | |
Rollup merge of #124524 - spastorino:make-foreign-static-use-struct, r=oli-obk
Add StaticForeignItem and use it on ForeignItemKind This is in preparation for unsafe extern blocks that adds a safe variant for functions inside extern blocks. r? `@oli-obk` cc `@compiler-errors`
Diffstat (limited to 'src')
| -rw-r--r-- | src/tools/clippy/clippy_utils/src/ast_utils.rs | 13 | ||||
| -rw-r--r-- | src/tools/rustfmt/src/items.rs | 6 |
2 files changed, 15 insertions, 4 deletions
diff --git a/src/tools/clippy/clippy_utils/src/ast_utils.rs b/src/tools/clippy/clippy_utils/src/ast_utils.rs index 0395eb1449b..529d20126b2 100644 --- a/src/tools/clippy/clippy_utils/src/ast_utils.rs +++ b/src/tools/clippy/clippy_utils/src/ast_utils.rs @@ -446,7 +446,18 @@ pub fn eq_item_kind(l: &ItemKind, r: &ItemKind) -> bool { pub fn eq_foreign_item_kind(l: &ForeignItemKind, r: &ForeignItemKind) -> bool { use ForeignItemKind::*; match (l, r) { - (Static(lt, lm, le), Static(rt, rm, re)) => lm == rm && eq_ty(lt, rt) && eq_expr_opt(le, re), + ( + Static(box StaticForeignItem { + ty: lt, + mutability: lm, + expr: le, + }), + Static(box StaticForeignItem { + ty: rt, + mutability: rm, + expr: re, + }), + ) => lm == rm && eq_ty(lt, rt) && eq_expr_opt(le, re), ( Fn(box ast::Fn { defaultness: ld, diff --git a/src/tools/rustfmt/src/items.rs b/src/tools/rustfmt/src/items.rs index f6f51fbd8ea..e196d1817f3 100644 --- a/src/tools/rustfmt/src/items.rs +++ b/src/tools/rustfmt/src/items.rs @@ -3325,11 +3325,11 @@ impl Rewrite for ast::ForeignItem { .map(|(s, _, _)| format!("{};", s)) } } - ast::ForeignItemKind::Static(ref ty, mutability, _) => { + ast::ForeignItemKind::Static(ref static_foreign_item) => { // FIXME(#21): we're dropping potential comments in between the // function kw here. let vis = format_visibility(context, &self.vis); - let mut_str = format_mutability(mutability); + let mut_str = format_mutability(static_foreign_item.mutability); let prefix = format!( "{}static {}{}:", vis, @@ -3340,7 +3340,7 @@ impl Rewrite for ast::ForeignItem { rewrite_assign_rhs( context, prefix, - &**ty, + &static_foreign_item.ty, &RhsAssignKind::Ty, shape.sub_width(1)?, ) |
