1
Fork 0

Enums in offset_of: update based on est31, scottmcm & llogiq review

This commit is contained in:
George Bateman 2023-08-15 22:32:55 +01:00
parent e936416a8d
commit d995bd61e7
No known key found for this signature in database
GPG key ID: C417AA9C4039EFCF
15 changed files with 150 additions and 140 deletions

View file

@ -16,7 +16,7 @@ use rustc_middle::mir::interpret::{alloc_range, AllocId};
use rustc_middle::mir::mono::MonoItem;
use rustc_middle::ty::{self, Instance, ParamEnv, Ty, TyCtxt, Variance};
use rustc_span::def_id::{CrateNum, DefId, LOCAL_CRATE};
use rustc_target::abi::{FieldIdx, OffsetOfIdx};
use rustc_target::abi::FieldIdx;
use stable_mir::mir::mono::InstanceDef;
use stable_mir::mir::{Body, CopyNonOverlapping, Statement, UserTypeProjection, VariantIdx};
use stable_mir::ty::{
@ -643,13 +643,10 @@ impl<'tcx> Stable<'tcx> for FieldIdx {
}
}
impl<'tcx> Stable<'tcx> for OffsetOfIdx {
type T = usize;
impl<'tcx> Stable<'tcx> for (rustc_target::abi::VariantIdx, FieldIdx) {
type T = (usize, usize);
fn stable(&self, _: &mut Tables<'tcx>) -> Self::T {
match self {
OffsetOfIdx::Field(f) => f.as_usize(),
OffsetOfIdx::Variant(v) => v.as_usize(),
}
(self.0.as_usize(), self.1.as_usize())
}
}