]> git.lizzy.rs Git - rust.git/commitdiff
rustc: use syntactic (instead of visibility) source info where appropriate.
authorEduard-Mihai Burtescu <edy.burt@gmail.com>
Tue, 29 May 2018 10:54:24 +0000 (13:54 +0300)
committerEduard-Mihai Burtescu <edy.burt@gmail.com>
Wed, 30 May 2018 17:30:10 +0000 (20:30 +0300)
16 files changed:
src/librustc/mir/visit.rs
src/librustc_mir/transform/check_unsafety.rs
src/librustc_mir/util/pretty.rs
src/test/mir-opt/box_expr.rs
src/test/mir-opt/end_region_1.rs
src/test/mir-opt/end_region_2.rs
src/test/mir-opt/end_region_3.rs
src/test/mir-opt/end_region_4.rs
src/test/mir-opt/end_region_8.rs
src/test/mir-opt/end_region_9.rs
src/test/mir-opt/end_region_cyclic.rs
src/test/mir-opt/issue-41110.rs
src/test/mir-opt/nll/reborrow-basic.rs
src/test/mir-opt/nll/region-subtyping-basic.rs
src/test/mir-opt/packed-struct-drop-aligned.rs
src/test/mir-opt/validate_3.rs

index 3aec9f10e3d5e17694ae22f2da9337af997ac858..3a1a8f02f4979c4d1652056df0c798605372f6ad 100644 (file)
@@ -722,7 +722,7 @@ fn super_local_decl(&mut self,
 
                 self.visit_ty(ty, TyContext::LocalDecl {
                     local,
-                    source_info: *visibility_source_info,
+                    source_info: *syntactic_source_info,
                 });
                 self.visit_source_info(syntactic_source_info);
                 self.visit_source_info(visibility_source_info);
index 48de30f1ff18a3e0a04eaf262007baeb144be7b4..38472418aab982d614b15924d78c640b96a8cb64 100644 (file)
@@ -166,7 +166,7 @@ fn visit_place(&mut self,
                         // Internal locals are used in the `move_val_init` desugaring.
                         // We want to check unsafety against the source info of the
                         // desugaring, rather than the source info of the RHS.
-                        self.source_info = self.mir.local_decls[local].visibility_source_info;
+                        self.source_info = self.mir.local_decls[local].syntactic_source_info;
                     }
                 }
                 let base_ty = base.ty(self.mir, self.tcx).to_ty(self.tcx);
index bf01619d5b0b53ef45f31d8e1b1f4662e6b4eb4f..520b7dfac4f7e4a80f6269e2092b4fd1db4fc841 100644 (file)
@@ -467,8 +467,8 @@ fn write_scope_tree(
         // User variable types (including the user's name in a comment).
         for local in mir.vars_iter() {
             let var = &mir.local_decls[local];
-            let (name, source_info) = if var.visibility_source_info.scope == child {
-                (var.name.unwrap(), var.visibility_source_info)
+            let (name, source_info) = if var.syntactic_source_info.scope == child {
+                (var.name.unwrap(), var.syntactic_source_info)
             } else {
                 // Not a variable or not declared in this scope.
                 continue;
index ed9c303a16fd4781aa074477d2784e0f830f5082..8390a0d19ae7b51e416d624c3bec8000d636e30e 100644 (file)
@@ -33,9 +33,10 @@ fn drop(&mut self) {
 // START rustc.main.ElaborateDrops.before.mir
 //     let mut _0: ();
 //     scope 1 {
+//     }
+//     scope 2 {
 //         let _1: std::boxed::Box<S>;
 //     }
-//     ...
 //     let mut _2: std::boxed::Box<S>;
 //     let mut _3: ();
 //     let mut _4: std::boxed::Box<S>;
index 640dec0861d045e9b689e411e5012e41b9dfd3a7..184459aa90eb8cf403fc014e8a253f246ac7ec97 100644 (file)
@@ -22,10 +22,10 @@ fn main() {
 // START rustc.main.SimplifyCfg-qualify-consts.after.mir
 //     let mut _0: ();
 //     ...
-//     let _1: i32;
-//     ...
 //     let _2: &'10_1rs i32;
 //     ...
+//     let _1: i32;
+//     ...
 //     bb0: {
 //         StorageLive(_1);
 //         _1 = const 3i32;
index 3fb5621c8ae3ba4429d9584b0046feb9507d8f3d..c40ab5253a075d3f6233d73c46003a37623a28e1 100644 (file)
@@ -27,11 +27,11 @@ fn main() {
 // START rustc.main.SimplifyCfg-qualify-consts.after.mir
 //     let mut _0: ();
 //     ...
-//     let _2: bool;
+//     let _7: &'23_3rs bool;
 //     ...
 //     let _3: &'23_1rs bool;
 //     ...
-//     let _7: &'23_3rs bool;
+//     let _2: bool;
 //     ...
 //     let mut _4: ();
 //     let mut _5: bool;
index 070bde8e3c3e6f7faa15551307266e0f5afeb6c5..086d80d15eacd43150333595e108900fc861313e 100644 (file)
@@ -28,11 +28,11 @@ fn main() {
 // START rustc.main.SimplifyCfg-qualify-consts.after.mir
 //     let mut _0: ();
 //     ...
-//     let mut _1: bool;
+//     let _7: &'26_3rs bool;
 //     ...
 //     let _3: &'26_1rs bool;
 //     ...
-//     let _7: &'26_3rs bool;
+//     let mut _1: bool;
 //     ...
 //     let mut _2: ();
 //     let mut _4: ();
index ded818688d72f0aded96c3c38813d15496c0989e..fc58e0824e8bdad258eeb8cbfafdb19a9039ec30 100644 (file)
@@ -32,13 +32,13 @@ fn foo(i: i32) {
 // START rustc.main.SimplifyCfg-qualify-consts.after.mir
 //     let mut _0: ();
 //     ...
-//     let _1: D;
-//     ...
-//     let _2: i32;
+//     let _6: &'26_4rs i32;
 //     ...
 //     let _3: &'26_2rs i32;
 //     ...
-//     let _6: &'26_4rs i32;
+//     let _2: i32;
+//     ...
+//     let _1: D;
 //     ...
 //     let mut _4: ();
 //     let mut _5: i32;
index d621cdb4d58f8c89d5f3791f581963cca37f624d..96a64f2eebfb49cc1547c3d9d4235cdc1791bfff 100644 (file)
@@ -31,10 +31,10 @@ fn foo<F>(f: F) where F: FnOnce() -> i32 {
 // fn main() -> () {
 //    let mut _0: ();
 //    ...
-//    let _1: D;
-//    ...
 //    let _2: &'21_1rs D;
 //    ...
+//    let _1: D;
+//    ...
 //    let mut _3: ();
 //    let mut _4: [closure@NodeId(22) r:&'19s D];
 //    let mut _5: &'21_1rs D;
index 6d9a27eeeb4560dc276027cd92a4e7cd36bc4f50..15c31e178759d076dec144ef3426f22b13daf949 100644 (file)
@@ -41,11 +41,11 @@ fn main() {
 // fn main() -> () {
 //     let mut _0: ();
 //     ...
-//     let mut _1: bool;
+//     let mut _4: &'33_0rs i32;
 //     ...
 //     let _2: i32;
 //     ...
-//     let mut _4: &'33_0rs i32;
+//     let mut _1: bool;
 //     ...
 //     let mut _3: ();
 //     let mut _5: !;
index 9c939d0d2fbaddbe1f0e373c04ec325b384f5d53..2d6962c5a5c1f5609b9357532ede492609220131 100644 (file)
@@ -43,9 +43,9 @@ fn query() -> bool { true }
 // fn main() -> (){
 //     let mut _0: ();
 //     scope 1 {
-//         let _2: S<'36_0rs>;
 //     }
 //     scope 2 {
+//         let _2: S<'36_0rs>;
 //     }
 //     let mut _1: ();
 //     let mut _3: std::cell::Cell<std::option::Option<&'36_0rs S<'36_0rs>>>;
index f7f447cc6ba641b8ea93c6af0051af5793acf7f8..e43b4052e07e885a08420b9d7f4bf0d9a187792e 100644 (file)
@@ -40,9 +40,10 @@ fn other(self, s: Self) {}
 // START rustc.main.ElaborateDrops.after.mir
 //    let mut _0: ();
 //    scope 1 {
+//    }
+//    scope 2 {
 //        let _1: ();
 //    }
-//    ...
 //    let mut _2: S;
 //    let mut _3: S;
 //    let mut _4: S;
@@ -52,10 +53,10 @@ fn other(self, s: Self) {}
 // START rustc.test.ElaborateDrops.after.mir
 //    let mut _0: ();
 //    ...
-//    let _1: S;
-//    ...
 //    let mut _2: S;
 //    ...
+//    let _1: S;
+//    ...
 //    let mut _3: ();
 //    let mut _4: S;
 //    let mut _5: S;
index b7c8d81b77fdbaf91b0caeefda1d9c578731ebcb..94a6a9799cf9d1b87c5c362db33e79ac6b7a5d35 100644 (file)
@@ -32,7 +32,7 @@ fn main() {
 // ...
 // | '_#9r    | {bb0[10], bb0[14..=17]}
 // ...
-// let _2: &'_#7r mut i32;
-// ...
 // let _4: &'_#9r mut i32;
+// ...
+// let _2: &'_#7r mut i32;
 // END rustc.main.nll.0.mir
index 16952143d0a5bc6a294682f139da8c89adbf6795..57a11d8dd25cb280c87d5ea8922e947abc35a1a8 100644 (file)
@@ -37,10 +37,10 @@ fn main() {
 // | '_#4r    | {bb2[5..=6], bb3[0..=1]}
 // END rustc.main.nll.0.mir
 // START rustc.main.nll.0.mir
-// let _2: &'_#3r usize;
-// ...
 // let _6: &'_#4r usize;
 // ...
+// let _2: &'_#3r usize;
+// ...
 // _2 = &'_#2r _1[_3];
 // ...
 // _7 = _2;
index 1b114419448f11b54cbb48d4b69ac09128c4d5c1..9441c6f4085a2d9bc3bfbbf75618219f2d4caeb1 100644 (file)
@@ -29,9 +29,9 @@ fn drop(&mut self) {}
 // fn main() -> () {
 //     let mut _0: ();
 //     scope 1 {
-//         let mut _1: Packed;
 //     }
 //     scope 2 {
+//         let mut _1: Packed;
 //     }
 //     let mut _2: Aligned;
 //     let mut _3: Droppy;
index 79645bd36000a66cdfff2eadb8f4716631a71cbb..72ec9ce400ffeccbb8a30c0a13ffc637bef1c1de 100644 (file)
@@ -32,14 +32,14 @@ fn _unused2(x: *const i32) -> i32 { unsafe { *x }}
 // fn main() -> (){
 //     let mut _0: ();
 //     scope 1 {
-//         let _1: Test;
 //         scope 3 {
-//             let _2: &ReErased Test;
 //         }
 //         scope 4 {
+//             let _2: &ReErased Test;
 //         }
 //     }
 //     scope 2 {
+//         let _1: Test;
 //     }
 //     let mut _3: ();
 //     let mut _4: &ReErased i32;