Commit Graph

432 Commits

Author SHA1 Message Date
gingerBill a7d7c92a53 #min_field_align & #max_field_align; deprecate #field_align in favour of #min_field_align 2024-09-30 13:05:28 +01:00
Laytan Laats 603efa860a add '#caller_expression' 2024-09-14 22:13:37 +02:00
Laytan 63cd9a031a fix variadic parameter with default value error check 2024-08-21 15:11:16 +02:00
Jeroen van Rijn ebbb70f11d Error if missing map key type
Fixes #4096
2024-08-17 17:12:27 +02:00
Laytan 29a6959a56 Merge pull request #2977 from jakubtomsu/disallow-variadic-param-default
Report error when a variadic procedure parameter has a default value
2024-08-14 11:55:09 +02:00
Roland Kovacs dda89a69bf Check if procedure parameter type declares polymorphic args
When a procedure parameter's type was declared in an imported package the type
checker correctly resolved to the parametric type, but it did not check if the
expression that refers to that type conforms to a polymorphic type declaration.

This error was not detected if the procedure was unused, since it was marked as
polymorphic, where further type check is done on instantiation.
2024-08-08 19:50:05 +02:00
gingerBill a06cb8ba46 Add #simd[N]rawptr support 2024-08-05 12:04:36 +01:00
gingerBill ef84382f23 Add suggestion for #3961 2024-07-22 20:11:23 +01:00
gingerBill fcaa47986a Improve error handling for invalid syntax doing [*]T 2024-07-22 16:29:29 +01:00
gingerBill 1e37eaf54d Begin work for bit_set[...; [N]T] (not working) 2024-07-15 14:49:20 +01:00
gingerBill 0a530b5ce8 Add error for #no_capture being reserved for future use 2024-07-14 13:20:12 +01:00
gingerBill 3533094cc2 Restrict #no_capture to pointer-like types only 2024-07-14 12:44:13 +01:00
gingerBill 3dff83f3dc Mock out #no_capture for future use 2024-07-14 12:39:30 +01:00
gingerBill 8642d719f0 Imply #no_capture to all variadic parameters 2024-07-14 12:19:47 +01:00
gingerBill edc793d7c1 Add #no_capture args: ..T to reuse the backing array stack memory 2024-07-14 11:39:05 +01:00
gingerBill c83307f26f Give error message suggestion when doing ^x instead of x^ if x is an r-value 2024-07-10 12:39:42 +01:00
gingerBill f85f6b338a Change .. variadic logic; comment out unneeded error message 2024-07-10 12:28:15 +01:00
gingerBill ae2f16edea Fix #3894 2024-07-09 15:29:36 +01:00
Laytan Laats f66b7021a6 Fix not detecting duplicate proc cases
Fixes #3864
2024-07-05 00:50:52 +02:00
gingerBill ec38215842 Fix #3803 2024-06-28 10:09:46 +01:00
Laytan Laats 29250f2657 fix regression in test_issue_2395 2024-06-07 16:33:38 +02:00
gingerBill 68781f8dd3 Remove unnecessary Wait_Signal checks 2024-06-07 00:11:00 +01:00
gingerBill 7044a7d776 Try to fix a possible race condition with polymorphic record parameters 2024-06-06 23:55:48 +01:00
gingerBill 64bdb3a097 Fix #3630 (first part) 2024-05-26 12:17:03 +01:00
gingerBill 32245e93a1 Fix #3514 along with soa.a[i] bounds checking 2024-05-16 16:18:21 +01:00
gingerBill 8fa20fb875 Extra check for field being nullptr 2024-05-13 14:44:53 +01:00
gingerBill 7905f0533f Fix #3582 by disallowing it 2024-05-13 12:01:16 +01:00
gingerBill 6bfaf4a093 Fix another oversight for bit_field endian with 1-byte types 2024-05-11 22:36:17 +01:00
gingerBill 811d53b305 Generalize to any 1-byte element in bit_field 2024-05-11 13:48:19 +01:00
gingerBill aea28d5189 Allow edge-case where backing type of a bit_field is (array of) u8, to allow any endian type 2024-05-11 13:47:33 +01: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
gingerBill d85c8f0b2c Fix #3555 2024-05-09 10:58:57 +01:00
gingerBill 3f7a369aa1 Check for specialization in typeid/T for parapoly records 2024-05-07 14:53:02 +01:00
gingerBill 0cec2d7827 Fix #3527 2024-05-07 11:51:06 +01:00
gingerBill 0da6a3e214 Fix #3530 2024-05-07 11:42:48 +01:00
Feoramund 6ec7845249 Fix #3531
Individual `bit_field` size was not being added to the total size.
Error message was changed to be more explicit.
2024-05-06 18:30:04 -04:00
gingerBill 2201f365a1 Allow #no_alias on multi-pointers 2024-05-03 14:51:02 +01:00
gingerBill 94d35d9918 Disallow mixing endian types within a bit_field 2024-04-24 17:31:31 +01:00
gingerBill ec5a84a537 Improve code generation for loading bit_field fields 2024-04-24 13:10:58 +01:00
gingerBill 7cd2bc26f4 Clear error message on collisions with using on struct fields 2024-04-17 13:31:32 +01:00
gingerBill a61ae7c861 Fix #3427 2024-04-16 13:31:49 +01:00
gingerBill efc3f9916e Fix #3414 2024-04-12 12:30:16 +01:00
Chris 219eb58c08 Fix typo in using parameter error message 2024-04-09 12:03:41 +01:00
gingerBill b47d73c651 Fix type checking for invalid enum backing type 2024-04-01 13:34:30 +01:00
gingerBill 8e1a2094a7 Fix debug info for map 2024-03-30 13:46:23 +00:00
gingerBill 4edcaa6124 Try storing a pointer to a fake metadata type in the debug info for a map 2024-03-30 10:29:20 +00:00
gingerBill 1009182f7b Fix another #soa race condition bug 2024-03-26 14:13:55 +00:00
gingerBill 533ba63c82 Fix #3327 #3204 #3200 2024-03-26 13:06:39 +00:00
gingerBill 600ca83386 Merge pull request #3326 from rick-masters/fix_fields_wait_signal
Fix fields_wait_signal futex.
2024-03-25 13:29:08 +00:00
gingerBill e5629dafd0 Potentially fix a race condition with parapoly types (related to #3328) 2024-03-25 13:23:43 +00:00