diff --git a/hercules_cg/src/gpu.rs b/hercules_cg/src/gpu.rs
index e3dcc0c3c8628db0e544c9d446550e1351829042..a3eea2745ea6dde2929b9cd6fcc17f5c6483643f 100644
--- a/hercules_cg/src/gpu.rs
+++ b/hercules_cg/src/gpu.rs
@@ -2053,7 +2053,7 @@ namespace cg = cooperative_groups;
             Type::Array(element_type, extents) => {
                 assert!(num_fields.is_none());
                 let array_size = multiply_dcs(extents);
-                let elem_align = self.get_alignment(type_id);
+                let elem_align = self.get_alignment(*element_type);
                 format!(
                     "(({} + {} - 1) / {} * {}) * {}",
                     self.get_size(*element_type, None),