aboutsummaryrefslogtreecommitdiff
path: root/src/stdlib/optionals.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/stdlib/optionals.c')
-rw-r--r--src/stdlib/optionals.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/stdlib/optionals.c b/src/stdlib/optionals.c
index 41d38a19..3fe812b1 100644
--- a/src/stdlib/optionals.c
+++ b/src/stdlib/optionals.c
@@ -13,8 +13,8 @@ public
PUREFUNC bool is_none(const void *obj, const TypeInfo_t *non_optional_type) {
if (non_optional_type->metamethods.is_none) return non_optional_type->metamethods.is_none(obj, non_optional_type);
- const void *dest = (obj + non_optional_type->size);
- return *(bool *)dest;
+ const bool *has_value = (const bool *)(obj + non_optional_type->size);
+ return !(*has_value);
}
PUREFUNC public uint64_t Optional$hash(const void *obj, const TypeInfo_t *type) {