Commit Graph

664 Commits

Author SHA1 Message Date
gingerBill
3ec70c5517 Merge functionality of #maybe with the standard 'union' functionality 2022-05-23 12:04:19 +01:00
gingerBill
d9f293b281 Add better error message for trying to dereference a multi-pointer 2022-05-23 11:50:05 +01:00
gingerBill
438713af20 Allow transmute on constant expressions 2022-05-23 11:33:52 +01:00
gingerBill
dca2fbccff Improve ternary if type inference 2022-05-11 12:15:10 +01:00
gingerBill
8a9f7fc684 Fix #1713 2022-04-14 15:09:03 +01:00
gingerBill
3f935bea25 union #shared_nil
This adds a feature to `union` which requires all the variants to have a `nil` value and on assign to the union, checks whether that value is `nil` or not. If the value is `nil`, the union will be `nil` (thus sharing the `nil` value)
2022-03-24 11:55:03 +00:00
gitlost
10c5825715 Fix issue #829 "Compiler crashes when declaring maps with procedure"
Inits `o->value` in `check_expr_base_internal()` so doesn't accidentally
  use last (the proc lit was being set to that of previous string)
Adds test to "tests/issues" and changes CI to use new "run" shells
2022-03-23 12:56:37 +00:00
gingerBill
a68f0b2d72 Improve procedure group selection based on the minimum number of arguments 2022-03-18 22:18:12 +00:00
gingerBill
a7adb2fb6e Merge branch 'master' into freestanding_amd64 2022-03-14 11:02:59 +00:00
gingerBill
49fecbdc5e Improve error message when there is "no field" found for a large anonymous struct 2022-03-01 14:49:05 +00:00
gingerBill
278e239973 Commit rest of code for -disallow-rtti 2022-02-28 13:40:01 +00:00
gingerBill
e81ed9a960 Add "Did you mean" to Objective-C fields 2022-02-22 23:19:49 +00:00
gingerBill
65dedbb1ca Add #subtype struct field prefix, required to have a COM interface hierarchy 2022-02-16 11:54:15 +00:00
gingerBill
0e5928ff39 Correct pseudo selector code generation 2022-02-15 15:16:30 +00:00
gingerBill
c5d348515d Add intrinsics.type_is_subtype_of; intrinsics.objc_selector_name 2022-02-08 22:59:37 +00:00
gingerBill
445ca70521 Correct implicit union cast 2022-02-05 16:11:48 +00:00
gingerBill
c6ab8f82c8 Code refactor to aid development 2022-02-05 15:17:47 +00:00
gingerBill
67ce0ec29f Improve printing for unhandled cases by adding a new line before the cases 2022-02-05 14:58:13 +00:00
gingerBill
23c3573c30 Minor correction to error message suggestion 2022-02-05 14:56:06 +00:00
gingerBill
a4308e7246 Improve union variant assignment determination 2022-02-05 14:45:59 +00:00
gingerBill
3439139b1c Minor clean up 2022-02-05 14:34:29 +00:00
gingerBill
dd84b61cc8 Correct add_to_seen_map logic 2022-02-05 14:07:17 +00:00
gingerBill
b8c4bf2afb Add #partial [Enum]Type{...} support to check for missing enumerated array fields 2022-02-05 14:02:21 +00:00
gingerBill
d5384c5aa4 Only check idents in the alias (of alias)+ problem 2022-02-04 22:45:13 +00:00
gingerBill
3a81f2ab89 Correct the type aliasing problem, caused by aliases (of aliases)+ 2022-02-04 22:40:15 +00:00
gingerBill
35c90fe124 Fix type alias declaration evaluation problem (#854 #1439) 2022-02-03 13:34:31 +00:00
gingerBill
24e7356825 Add #no_type_assert and #type_assert to disable implicit type assertions with x.(T) 2022-01-27 16:08:47 +00:00
gingerBill
f16f1d932e Fix #1448 2022-01-25 14:24:15 +00:00
gingerBill
fe0b5bf4e2 Parse comments on enums fields 2022-01-24 23:28:59 +00:00
gingerBill
42ab882db4 Remove debug code 2022-01-24 15:56:26 +00:00
gingerBill
dcc9e61362 Correct string_append_token 2022-01-24 14:52:43 +00:00
gingerBill
56b4e0a3c3 Fix #1267 2022-01-23 15:40:46 +00:00
gingerBill
6c48670819 Make ODIN_BUILD_MODE a enum type 2022-01-15 17:34:35 +00:00
gingerBill
7cc265e14c Add mutex guards for signature scopes 2022-01-10 14:50:28 +00:00
gingerBill
e6b8f7e77a Fix #1398 2022-01-03 12:54:31 +00:00
gingerBill
0d7cb02386 Fix conversion from float to quaternion 2021-12-31 23:20:14 +00:00
gingerBill
504ea7deeb Fix update_untyped_expr_type for ternary if expressions with an untyped type 2021-11-24 16:31:37 +00:00
gingerBill
3e04b45106 Allow cast from float to complex 2021-11-19 12:26:10 +00:00
gingerBill
3f038428a7 Begin minimizing Ast size 2021-11-14 15:12:37 +00:00
gingerBill
6646348e1a Increase usage of PtrMap 2021-11-05 17:03:02 +00:00
gingerBill
68046d0c08 Allow casting between matrix types of different element types 2021-11-04 16:50:59 +00:00
gingerBill
bc2bf1caeb Add #load_hash(<filepath>, <string-hash-kind>) 2021-11-04 16:29:41 +00:00
gingerBill
3d06dddb72 Allow casting from floats to quaternions 2021-11-03 12:45:19 +00:00
Jeroen van Rijn
73648bb2d8 Fix #1268.
Error message for enumerated arrays going out of bounds was not yet updated for the Enum change.
2021-11-03 11:36:24 +01:00
gingerBill
b4df51e483 Merge branch 'master' into new-matrix-type 2021-10-23 19:24:47 +01:00
gingerBill
c9effb9b9f Correct ternary if expression type determination 2021-10-22 14:37:27 +01:00
gingerBill
28af376d10 Quick fix 2021-10-22 13:17:49 +01:00
gingerBill
48de1a01a9 Correct update propagation of type for ternary if expressions 2021-10-22 13:14:19 +01:00
gingerBill
48d277a3c4 Allow conversions between matrices of the same element count 2021-10-21 01:34:39 +01:00
gingerBill
e0b9475378 Allow casting between square matrices of the same element type 2021-10-21 01:14:44 +01:00