diff options
| author | Celina G. Val <celinval@amazon.com> | 2023-12-11 14:52:31 -0800 |
|---|---|---|
| committer | Celina G. Val <celinval@amazon.com> | 2023-12-11 15:29:34 -0800 |
| commit | 0a65dd305f06fa32eaa494db74c40f5d8616a2e2 (patch) | |
| tree | 8e7ebc339b9b3dbe13a7c1ef530480809abf9b2b /compiler/rustc_smir/src | |
| parent | 8a3765582cb83733f8c344062729df0175409488 (diff) | |
| download | rust-0a65dd305f06fa32eaa494db74c40f5d8616a2e2.tar.gz rust-0a65dd305f06fa32eaa494db74c40f5d8616a2e2.zip | |
Monomorphize args while building Instance body
Diffstat (limited to 'compiler/rustc_smir/src')
| -rw-r--r-- | compiler/rustc_smir/src/rustc_smir/builder.rs | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/compiler/rustc_smir/src/rustc_smir/builder.rs b/compiler/rustc_smir/src/rustc_smir/builder.rs index 7e74a1d92c7..039bdec4c78 100644 --- a/compiler/rustc_smir/src/rustc_smir/builder.rs +++ b/compiler/rustc_smir/src/rustc_smir/builder.rs @@ -6,7 +6,7 @@ use crate::rustc_smir::{Stable, Tables}; use rustc_middle::mir; use rustc_middle::mir::visit::MutVisitor; -use rustc_middle::ty::{self, Ty, TyCtxt}; +use rustc_middle::ty::{self, GenericArgsRef, Ty, TyCtxt}; /// Builds a monomorphic body for a given instance. pub struct BodyBuilder<'tcx> { @@ -68,6 +68,10 @@ impl<'tcx> MutVisitor<'tcx> for BodyBuilder<'tcx> { self.super_constant(constant, location); } + fn visit_args(&mut self, args: &mut GenericArgsRef<'tcx>, _: mir::Location) { + *args = self.monomorphize(*args); + } + fn tcx(&self) -> TyCtxt<'tcx> { self.tcx } |
