From 33d9979eb0be4047c06f6b297a82167426a08462 Mon Sep 17 00:00:00 2001 From: andrew <> Date: Fri, 10 May 2024 20:28:20 +0900 Subject: [PATCH] Retain mut in static mut --- src/sg_statement.rs | 4 ++++ tests/roundtrip.rs | 6 ++++++ 2 files changed, 10 insertions(+) diff --git a/src/sg_statement.rs b/src/sg_statement.rs index 09c3754..efd5073 100644 --- a/src/sg_statement.rs +++ b/src/sg_statement.rs @@ -831,6 +831,10 @@ impl Formattable for Item { append_vis(out, base_indent, &mut sg, &x.vis); append_whitespace(out, base_indent, &mut sg, x.static_token.span.start()); sg.seg(out, "static "); + if let Some(x) = x.mutability { + append_whitespace(out, base_indent, &mut sg, x.span.start()); + sg.seg(out, "mut "); + } sg.seg(out, &x.ident.to_string()); sg.seg(out, ": "); sg.child(x.ty.make_segs(out, base_indent)); diff --git a/tests/roundtrip.rs b/tests/roundtrip.rs index 6dc1a53..38667f9 100644 --- a/tests/roundtrip.rs +++ b/tests/roundtrip.rs @@ -387,3 +387,9 @@ fn rt_extern_c_static1() { } "#); } + +#[test] +fn rt_static_mut1() { + rt(r#"static mut X: Y = Y(7); +"#); +}