File tree 3 files changed +14
-4
lines changed
3 files changed +14
-4
lines changed Original file line number Diff line number Diff line change @@ -2039,14 +2039,16 @@ pub(crate) fn prefer_next_line(
2039
2039
2040
2040
fn rewrite_expr_addrof (
2041
2041
context : & RewriteContext < ' _ > ,
2042
- _borrow_kind : ast:: BorrowKind ,
2042
+ borrow_kind : ast:: BorrowKind ,
2043
2043
mutability : ast:: Mutability ,
2044
2044
expr : & ast:: Expr ,
2045
2045
shape : Shape ,
2046
2046
) -> Option < String > {
2047
- let operator_str = match mutability {
2048
- ast:: Mutability :: Not => "&" ,
2049
- ast:: Mutability :: Mut => "&mut " ,
2047
+ let operator_str = match ( mutability, borrow_kind) {
2048
+ ( ast:: Mutability :: Not , ast:: BorrowKind :: Ref ) => "&" ,
2049
+ ( ast:: Mutability :: Not , ast:: BorrowKind :: Raw ) => "&raw const " ,
2050
+ ( ast:: Mutability :: Mut , ast:: BorrowKind :: Ref ) => "&mut " ,
2051
+ ( ast:: Mutability :: Mut , ast:: BorrowKind :: Raw ) => "&raw mut " ,
2050
2052
} ;
2051
2053
rewrite_unary_prefix ( context, operator_str, expr, shape)
2052
2054
}
Original file line number Diff line number Diff line change @@ -218,6 +218,10 @@ fn returns() {
218
218
fn addrof ( ) {
219
219
& mut ( aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa+bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb) ;
220
220
& ( aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa+bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb) ;
221
+
222
+ // raw reference operator
223
+ & raw const a;
224
+ & raw mut b;
221
225
}
222
226
223
227
fn casts ( ) {
Original file line number Diff line number Diff line change @@ -251,6 +251,10 @@ fn addrof() {
251
251
+ bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb) ;
252
252
& ( aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
253
253
+ bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb) ;
254
+
255
+ // raw reference operator
256
+ & raw const a;
257
+ & raw mut b;
254
258
}
255
259
256
260
fn casts ( ) {
You can’t perform that action at this time.
0 commit comments