diff --git a/src/core/defines.rs b/src/core/defines.rs index b1166279..e3e81e84 100644 --- a/src/core/defines.rs +++ b/src/core/defines.rs @@ -602,6 +602,15 @@ pub enum CublasMathMode { #[cfg(test)] mod tests { + use super::DType; + + #[test] + fn dtype_from_u32_roundtrip() { + for v in (DType::F32 as u32)..=(DType::F16 as u32) { + assert_eq!(DType::from(v) as u32, v); + } + } + #[cfg(feature = "afserde")] mod serde_tests { #[test] diff --git a/src/core/util.rs b/src/core/util.rs index 5a626d52..552caf29 100644 --- a/src/core/util.rs +++ b/src/core/util.rs @@ -75,7 +75,7 @@ impl From for AfError { impl From for DType { fn from(t: u32) -> Self { - assert!(DType::F32 as u32 <= t && t <= DType::U64 as u32); + assert!(DType::F32 as u32 <= t && t <= DType::F16 as u32); unsafe { mem::transmute(t) } } }