Unnamed repository; edit this file 'description' to name the repository.
Rollup merge of #124797 - beetrees:primitive-float, r=davidtwco
Refactor float `Primitive`s to a separate `Float` type Now there are 4 of them, it makes sense to refactor `F16`, `F32`, `F64` and `F128` out of `Primitive` and into a separate `Float` type (like integers already are). This allows patterns like `F16 | F32 | F64 | F128` to be simplified into `Float(_)`, and is consistent with `ty::FloatTy`. As a side effect, this PR also makes the `Ty::primitive_size` method work with `f16` and `f128`. Tracking issue: #116909 `@rustbot` label +F-f16_and_f128
Matthias Krüger 2024-05-10
parent 643e56d · parent 861cca5 · commit 2ccb1a1
-rw-r--r--crates/hir-ty/src/layout.rs12
1 files changed, 6 insertions, 6 deletions
diff --git a/crates/hir-ty/src/layout.rs b/crates/hir-ty/src/layout.rs
index dd949e26c2..d9fd029d37 100644
--- a/crates/hir-ty/src/layout.rs
+++ b/crates/hir-ty/src/layout.rs
@@ -6,8 +6,8 @@ use base_db::salsa::Cycle;
use chalk_ir::{AdtId, FloatTy, IntTy, TyKind, UintTy};
use hir_def::{
layout::{
- Abi, FieldsShape, Integer, LayoutCalculator, LayoutS, Primitive, ReprOptions, Scalar, Size,
- StructKind, TargetDataLayout, WrappingRange,
+ Abi, FieldsShape, Float, Integer, LayoutCalculator, LayoutS, Primitive, ReprOptions,
+ Scalar, Size, StructKind, TargetDataLayout, WrappingRange,
},
LocalFieldId, StructId,
};
@@ -264,10 +264,10 @@ pub fn layout_of_ty_query(
),
chalk_ir::Scalar::Float(f) => scalar(
dl,
- match f {
- FloatTy::F32 => Primitive::F32,
- FloatTy::F64 => Primitive::F64,
- },
+ Primitive::Float(match f {
+ FloatTy::F32 => Float::F32,
+ FloatTy::F64 => Float::F64,
+ }),
),
},
TyKind::Tuple(len, tys) => {