Commit Graph

949 Commits

Author SHA1 Message Date
gingerBill
4086a62167 Fix showing error when not meant to 2024-07-01 11:50:35 +01:00
gingerBill
11617af8f5 Add support for make(#soa[]T) etc 2024-07-01 11:34:50 +01:00
Jeroen van Rijn
efd933e221 Merge pull request #3842 from karl-zylinski/fix-poly-bitset-size
Fix for bit_set[$T] proc params always being generated as i8
2024-06-30 21:10:42 +02:00
Karl Zylinski
e0face1ac8 Make types like bit_set[$T] have their upper and lower bits overwritten by upper/lower from the source types when checking if polymorphic type is assignable. This fixes an issue where an i8 was always generated for bit_sets with generic elements, because it couldn't figure out upper/lower when check_bit_set_type was run. Fixes #2860 2024-06-30 20:36:51 +02:00
gingerBill
c88a1bef91 Add another -vet-cast check 2024-06-29 12:40:04 +01:00
gingerBill
e46d772b6d Add check for integer casts 2024-06-29 12:13:41 +01:00
gingerBill
4b71c47fd5 Check for unneeded transmute with -vet-cast 2024-06-29 12:02:31 +01:00
gingerBill
704530497b Rename -vet-identical-cast to -vet-cast; with minor code clean up 2024-06-29 11:44:45 +01:00
Feoramund
6496432b80 Add -vet-identical-cast 2024-06-28 23:14:03 -04:00
gingerBill
5a9698e8cb Properly fix #3820 2024-06-28 09:08:57 +01:00
Feoramund
f58eded5d2 Fix print segfault by missing argument in or_* shadowed error 2024-06-22 11:45:43 -04:00
gingerBill
c9884906d9 Add #directory 2024-06-20 12:15:55 +01:00
gingerBill
56383e45a7 Fix #3768 2024-06-20 11:44:00 +01:00
Feoramund
78a5a27212 Fix bit_set construction crash on constant non-integer field 2024-06-16 12:27:42 -04:00
Feoramund
33270f14a4 Fix #3739 2024-06-12 15:31:43 -04:00
gingerBill
c5f7788652 Check to see if matrices are exactly the same type 2024-06-12 12:54:57 +01:00
gingerBill
f57c03c170 Improve matrix type hinting rules a little 2024-06-12 12:40:29 +01:00
gingerBill
fa3cae2bb0 Add intrinsics.procedure_of
```odin
foo :: proc(x: $T) { fmt.println(x) }
bar :: intrinsics.procedure_of(foo(int(123))) // parameters are never ran at compile time, similar to `size_of`
bar(333) // prints 333
```
2024-06-10 15:02:34 +01:00
Feoramund
45d1328a85 Fix typo in a #force_inline error message 2024-06-10 00:50:16 -04:00
gingerBill
ef7c6b9895 Re Fix #3713 2024-06-09 14:07:07 +01:00
gingerBill
c17981ac38 Add edge case to error_operand_no_value 2024-06-09 14:02:01 +01:00
gingerBill
4b52f7fe2b Fix #3713 2024-06-09 13:35:22 +01:00
gingerBill
7044a7d776 Try to fix a possible race condition with polymorphic record parameters 2024-06-06 23:55:48 +01:00
gingerBill
cbabcb0907 Fix #3682 2024-06-05 15:43:15 +01:00
gingerBill
a0b1b8d1c3 Merge pull request #3673 from laytan/implement-foreign-import-improvements-on-vendor
Implement `#exists(path)` and use it to provide good errors for common missing vendor libraries
2024-06-04 19:57:09 +01:00
Laytan Laats
3e159736cd use #exists to provide good errors for common missing libraries 2024-06-04 20:13:51 +02:00
Laytan Laats
b47a15733d implement #exists(path) 2024-06-04 19:06:13 +02:00
gingerBill
6b386631dd Improve error message suggestion for passing enums to integers 2024-06-04 16:16:27 +01:00
Dudejoe870
9b78061c8f Initial hash directive implementation 2024-05-28 22:42:10 -05:00
gingerBill
64bdb3a097 Fix #3630 (first part) 2024-05-26 12:17:03 +01:00
gingerBill
f3f08c264f Be very particular with the cases for the error notes 2024-05-22 21:55:48 +01:00
gingerBill
2f35ee9671 Improve errors a lot for assigning procedures of the wrong signature 2024-05-22 21:52:15 +01:00
gingerBill
bc706f8b0c Fix indexing type when using a #row_major matrix 2024-05-20 15:04:15 +01:00
gingerBill
a68c635c00 Remove constant indexing for matrix value propagation 2024-05-20 15:00:43 +01:00
gingerBill
32245e93a1 Fix #3514 along with soa.a[i] bounds checking 2024-05-16 16:18:21 +01:00
gingerBill
a344bc4c0e Remove the old switch/for semantics entirely and enforce switch &x in y 2024-05-16 14:39:16 +01:00
gingerBill
8d687a959d Fix #3516 2024-05-13 12:52:28 +01:00
gingerBill
d1217340f5 Fix #3573 2024-05-13 12:26:01 +01:00
gingerBill
facae34354 Fix #3584 2024-05-13 11:53:59 +01:00
gingerBill
0f76c22c46 Check for illegal use of distinct 2024-05-12 17:48:06 +01:00
Laytan
98827c867d fix duplicate suggestions and add missing newline 2024-05-09 19:21:39 +02:00
gingerBill
f54977336b With -vet-style, give suggestion of separating where clauses with a comma rather than '&&'
This improves the error messages
2024-05-09 15:56:00 +01:00
Victor Sohier
56b62996c3 Remove breakpoint hook 2024-05-06 18:20:20 -04:00
Victor Sohier
6cb0f5d8c5 Explicitly handle previously implicitly handled case 2024-05-06 18:04:35 -04:00
Victor Sohier
a9b18c1ec0 Formatting 2024-05-05 21:15:41 -04:00
Victor Sohier
8e4f9cb777 Fix: Fixed #soa arrays 2024-05-05 21:08:33 -04:00
gingerBill
15f7148eae Merge pull request #3526 from laytan/target-features
Improve target features support
2024-05-05 21:50:57 +01:00
gingerBill
f2505b096d Improve error message's suggestion for if !integer 2024-05-03 14:22:30 +01:00
Laytan Laats
25f1d0906d compiler: improve target features support 2024-05-02 00:59:52 +02:00
gingerBill
2b26384b89 Implement dumb PtrMap 2024-04-26 15:04:46 +01:00