diff options
| author | ouz-a <ouz.agz@gmail.com> | 2023-09-30 16:40:15 +0300 |
|---|---|---|
| committer | ouz-a <ouz.agz@gmail.com> | 2023-09-30 16:40:15 +0300 |
| commit | 9130484db91e609686e287f7547fc7c085068d9b (patch) | |
| tree | 8b07fba4a11e9b19de0e8a472b937e9e39402b94 | |
| parent | 5282e5e120128ba589728ee4bcb4f18511ba9fb0 (diff) | |
| download | rust-9130484db91e609686e287f7547fc7c085068d9b.tar.gz rust-9130484db91e609686e287f7547fc7c085068d9b.zip | |
create localdecl and add span to it
| -rw-r--r-- | compiler/rustc_smir/src/rustc_smir/mod.rs | 9 | ||||
| -rw-r--r-- | compiler/stable_mir/src/mir/body.rs | 8 |
2 files changed, 15 insertions, 2 deletions
diff --git a/compiler/rustc_smir/src/rustc_smir/mod.rs b/compiler/rustc_smir/src/rustc_smir/mod.rs index c6c97ce35e8..d83b92b578b 100644 --- a/compiler/rustc_smir/src/rustc_smir/mod.rs +++ b/compiler/rustc_smir/src/rustc_smir/mod.rs @@ -106,7 +106,14 @@ impl<'tcx> Context for Tables<'tcx> { .collect(), }) .collect(), - locals: mir.local_decls.iter().map(|decl| self.intern_ty(decl.ty)).collect(), + locals: mir + .local_decls + .iter() + .map(|decl| stable_mir::mir::LocalDecl { + ty: self.intern_ty(decl.ty), + span: decl.source_info.span.stable(self), + }) + .collect(), } } diff --git a/compiler/stable_mir/src/mir/body.rs b/compiler/stable_mir/src/mir/body.rs index 6f8f7b06fa3..f2cdee0aafc 100644 --- a/compiler/stable_mir/src/mir/body.rs +++ b/compiler/stable_mir/src/mir/body.rs @@ -5,7 +5,13 @@ use crate::{ty::Ty, Span}; #[derive(Clone, Debug)] pub struct Body { pub blocks: Vec<BasicBlock>, - pub locals: Vec<Ty>, + pub locals: Vec<LocalDecl>, +} + +#[derive(Clone, Debug)] +pub struct LocalDecl { + pub ty: Ty, + pub span: Span, } #[derive(Clone, Debug)] |
