summaryrefslogtreecommitdiff
path: root/src/codegen/struct_layout.rs
diff options
context:
space:
mode:
authorFlier Lu <flier.lu@gmail.com>2017-02-08 19:45:56 +0800
committerFlier Lu <flier.lu@gmail.com>2017-02-08 19:46:00 +0800
commitdf2ff4f9fe9156989ced59ffd4bcce68764b6ca4 (patch)
treeee0f067b0099f4a318fa2eed4c5f0123a060f35a /src/codegen/struct_layout.rs
parentddc07fc6ba1586bac0edc0e80b99a83de1616538 (diff)
check empty layout
Diffstat (limited to 'src/codegen/struct_layout.rs')
-rw-r--r--src/codegen/struct_layout.rs6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/codegen/struct_layout.rs b/src/codegen/struct_layout.rs
index 3006a31a..98640570 100644
--- a/src/codegen/struct_layout.rs
+++ b/src/codegen/struct_layout.rs
@@ -163,7 +163,11 @@ impl<'a, 'ctx> StructLayoutTracker<'a, 'ctx> {
}
fn padding_bytes(&self, layout: Layout) -> usize {
- if self.latest_offset % layout.align == 0 {
+ if layout.align == 0 {
+ warn!("try to padding bytes without layout");
+
+ 0
+ } else if self.latest_offset % layout.align == 0 {
0
} else {
layout.align - (self.latest_offset % layout.align)