authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2020-03-18 11:11:41-04:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2020-03-18 11:11:41-04:00
log63a4dbc30d3ef3c7f8a8c6a2ba2087eaab8b830a
tree6e66f9d8108607acb610d0f850eb423567812436
parent1479c28b496e7c1db134b51f23dd2eb934b123bb
signaturelock-open Commit is signed but in an unrecognized format.

array sentinel does not count towards type_has_one_possible_value


1 files changed, 2 insertions(+), 4 deletions(-)

src/analyze.cpp+2-4
......@@ -1447,8 +1447,7 @@ static OnePossibleValue type_val_resolve_has_one_possible_value(CodeGen *g, ZigV
14471447 case LazyValueIdArrayType: {
14481448 LazyValueArrayType *lazy_array_type =
14491449 reinterpret_cast<LazyValueArrayType *>(type_val->data.x_lazy);
1450 // The sentinel counts as an extra element
1451 if (lazy_array_type->length == 0 && lazy_array_type->sentinel == nullptr)
1450 if (lazy_array_type->length == 0)
14521451 return OnePossibleValueYes;
14531452 return type_val_resolve_has_one_possible_value(g, lazy_array_type->elem_type->value);
14541453 }
......@@ -5735,8 +5734,7 @@ OnePossibleValue type_has_one_possible_value(CodeGen *g, ZigType *type_entry) {
57355734 case ZigTypeIdUnreachable:
57365735 return OnePossibleValueYes;
57375736 case ZigTypeIdArray:
5738 // The sentinel counts as an extra element
5739 if (type_entry->data.array.len == 0 && type_entry->data.array.sentinel == nullptr)
5737 if (type_entry->data.array.len == 0)
57405738 return OnePossibleValueYes;
57415739 return type_has_one_possible_value(g, type_entry->data.array.child_type);
57425740 case ZigTypeIdStruct: