diff options
| author | gingerBill <gingerBill@users.noreply.github.com> | 2024-05-08 13:39:57 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-05-08 13:39:57 +0100 |
| commit | 9b75656400b609143147155bf387601a2ab5a242 (patch) | |
| tree | 7126630d2f4567d75d01d5cb6cba16023f140101 /src/exact_value.cpp | |
| parent | 1d3c061add30bf517bd7bffbbdfc0a7900bef2fd (diff) | |
| parent | 9d1db48549b57635d96a1ecd698b03f3e36a4451 (diff) | |
Merge pull request #3308 from laytan/llvm-18
Support LLVM 18 (non-windows targets for now)
Diffstat (limited to 'src/exact_value.cpp')
| -rw-r--r-- | src/exact_value.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/exact_value.cpp b/src/exact_value.cpp index 83af82f55..1a42a82a9 100644 --- a/src/exact_value.cpp +++ b/src/exact_value.cpp @@ -121,12 +121,14 @@ gb_internal ExactValue exact_value_string(String string) { gb_internal ExactValue exact_value_i64(i64 i) { ExactValue result = {ExactValue_Integer}; + result.value_integer = {0}; big_int_from_i64(&result.value_integer, i); return result; } gb_internal ExactValue exact_value_u64(u64 i) { ExactValue result = {ExactValue_Integer}; + result.value_integer = {0}; big_int_from_u64(&result.value_integer, i); return result; } @@ -177,6 +179,7 @@ gb_internal ExactValue exact_value_typeid(Type *type) { gb_internal ExactValue exact_value_integer_from_string(String const &string) { ExactValue result = {ExactValue_Integer}; + result.value_integer = {0}; bool success; big_int_from_string(&result.value_integer, string, &success); if (!success) { @@ -585,6 +588,7 @@ gb_internal ExactValue exact_unary_operator_value(TokenKind op, ExactValue v, i3 return v; case ExactValue_Integer: { ExactValue i = {ExactValue_Integer}; + i.value_integer = {0}; big_int_neg(&i.value_integer, &v.value_integer); return i; } @@ -616,6 +620,7 @@ gb_internal ExactValue exact_unary_operator_value(TokenKind op, ExactValue v, i3 case ExactValue_Integer: { GB_ASSERT(precision != 0); ExactValue i = {ExactValue_Integer}; + i.value_integer = {0}; big_int_not(&i.value_integer, &v.value_integer, precision, !is_unsigned); return i; } |