diff options
| author | Austin Hicks <camlorn@camlorn.net> | 2016-11-23 16:50:36 -0500 |
|---|---|---|
| committer | Austin Hicks <camlorn@camlorn.net> | 2016-12-14 12:28:24 -0500 |
| commit | e9580e262bee0f8a5487f1a549feea561396eb20 (patch) | |
| tree | 65b3268082e1baefb6367bca9727c9bbda063197 /src | |
| parent | 052e59cc128993abfc5e1c8ce9148bef97df572c (diff) | |
| download | rust-e9580e262bee0f8a5487f1a549feea561396eb20.tar.gz rust-e9580e262bee0f8a5487f1a549feea561396eb20.zip | |
Some small fixes to how structs/enums are optimized
Diffstat (limited to 'src')
| -rw-r--r-- | src/librustc/ty/layout.rs | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/librustc/ty/layout.rs b/src/librustc/ty/layout.rs index 342542edcf0..6f63b15abe8 100644 --- a/src/librustc/ty/layout.rs +++ b/src/librustc/ty/layout.rs @@ -585,10 +585,10 @@ impl<'a, 'gcx, 'tcx> Struct { let (optimize, sort_ascending) = match kind { StructKind::AlwaysSizedUnivariant => (can_optimize, false), - StructKind::MaybeUnsizedUnivariant => (can_optimize, true), + StructKind::MaybeUnsizedUnivariant => (can_optimize, false), StructKind::EnumVariant => { assert!(fields.len() >= 1, "Enum variants must have discriminants."); - (can_optimize, fields[0].size(dl).bytes() == 1) + (can_optimize || fields[0].size(dl).bytes() == 1, true) } }; |
