Laytan Laats
1fce5791a1
fix require/enable target feature attribute on poly procs
2024-07-09 19:33:25 +02:00
Feoramund
77d64a5461
Forbid $T= parameter from crashing compiler
...
Fixes #3883
2024-07-06 15:32:17 -04:00
gingerBill
bf711b282d
Remove when check in check_entity_from_ident_or_selector
2024-07-04 13:58:36 +01:00
gingerBill
657bc88535
Allow x :: y when cond else proc(...){...}
2024-07-04 13:48:52 +01:00
gingerBill
a2b23de0a7
Sanity check for a nullptr
2024-07-01 12:24:46 +01:00
gingerBill
42ff711114
Fix #3515
2024-07-01 12:22:18 +01:00
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