Commit Graph

395 Commits

Author SHA1 Message Date
Laytan Laats
bb23648c71 Also convert and promote bit_set types for #c_varargs 2024-02-22 18:17:52 +01:00
Laytan Laats
f6f3a760bc Promote types in #c_varargs according to C rules 2024-02-21 22:05:11 +01:00
gingerBill
d496dbf3a0 Fix race condition with #soa 2024-02-13 16:54:41 +00:00
gingerBill
c291fffce1 Add metadata type to maps debug information to aid debuggers knowing what is in it it 2024-02-12 12:29:37 +00:00
gingerBill
5c4485f657 Add #load_directory(path: string) > []runtime.Load_Directory_File 2024-02-09 15:18:29 +00:00
gingerBill
59933b244d Allow polymorphic checking with intrinsics.type_is_subtype_of(Derived_Type, Poly_Type) 2024-02-08 13:41:02 +00:00
gingerBill
68df35b378 Add #field_align(N)
It sets the minimum alignment for the fields within a struct. This cannot be used with `#packed`, but can be used with `#align(N)`.
If `#align(N)` is less than `#field_align(N)`, then a warning will be printed.
2024-01-28 17:33:29 +00:00
gingerBill
5406acc8fa Fix type_ptr_set_update 2024-01-26 12:47:39 +00:00
jakubtomsu
1a57ad233d Fix field count in enumerated array type info 2023-10-01 13:09:08 +02:00
gingerBill
f4a390201c Fix #2819 2023-09-26 13:02:40 +01:00
gingerBill
d358ebd7e6 Potentially fix race condition #2463 #2814 2023-09-26 12:57:26 +01:00
gingerBill
c91898a888 Remove #relative slices; Replace with #relative multi-pointers 2023-08-05 16:05:39 +01:00
gingerBill
985e4eed60 Fix #2697 2023-08-04 16:00:10 +01:00
gingerBill
b495a302b0 Merge branch 'master' into tilde 2023-08-03 13:14:09 +01:00
gingerBill
a4de59c8ee Merge pull request #2686 from ryuukk/patch-8
Assign element to Slice not Array when alloc a Type_Slice
2023-08-01 14:45:19 +01:00
gingerBill
65206fe33e Go through loads of TODOs 2023-08-01 11:39:04 +01:00
ryuukk
a99da47b0d Assign element to Slice not Array when alloc a Type_Slice 2023-07-27 22:13:55 +02:00
gingerBill
0f217c715e Fix dependency issue; Allow polymorphic procedures in tilde 2023-07-25 15:15:35 +01:00
gingerBill
eec3b3009f Begin work on builtin procedures 2023-07-22 10:16:28 +01:00
gingerBill
c61e7c05da Begin working on global constants 2023-07-20 00:34:24 +01:00
gingerBill
7f43c24297 Merge branch 'master' into tilde 2023-07-17 16:23:01 +01:00
gingerBill
921530dd01 Fix to allow procedure groups on objective-c types 2023-07-17 12:43:56 +01:00
gingerBill
45b3ae31af Mock out more of the ep procedures 2023-07-17 00:31:44 +01:00
gingerBill
d2d243cca8 Mock out cg_emit_conv 2023-07-16 23:41:51 +01:00
gingerBill
26e06ba6a6 Correct check_call_arguments_new_and_improved logic 2023-06-20 16:08:26 +01:00
gingerBill
9ec927b9e9 Try to get make everything work with parapoly 2023-06-20 00:30:29 +01:00
gingerBill
6568625dea Fix line error printing for error messages 2023-06-19 22:12:47 +01:00
gingerBill
4a75a1e839 Merge branch 'master' into separate-int-word-sizes 2023-06-06 22:42:04 +01:00
gingerBill
8bf32ac697 Minor change to handling of propagation of errors with --- as a value 2023-05-22 12:53:29 +01:00
gingerBill
c0e84b0592 Fix #2536 2023-05-18 11:39:18 +01:00
gingerBill
685f7d0fea Rename word_size to ptr_size internally to make it clearer 2023-04-20 12:18:13 +01:00
gingerBill
84f966cb8f Begin work on separating int and word sizes (i.e. size_of(int) might not equal size_of(uintptr)) 2023-04-20 11:46:41 +01:00
gingerBill
5da76ae34b Add struct #no_copy 2023-04-15 15:37:32 +01:00
Lucas Perlind
08bc6a1698 Fix type comparison not accounting for parapoly params 2023-04-03 12:47:28 +10:00
gingerBill
a9182cfd8c Allow compound literals to access fields through using 2023-02-26 13:26:35 +00:00
gingerBill
66f2881a78 Allow comparisons between empty struct{} and union{} 2023-02-17 17:02:37 +00:00
gingerBill
6179d4feb1 Rename to Type_Info_Parameters 2023-02-08 11:23:21 +00:00
gingerBill
7124d541a1 General optimizations 2023-01-11 18:10:27 +00:00
gingerBill
3c7e45a46f Remove possible race condition in type_size_of/type_align_of 2023-01-11 17:45:18 +00:00
gingerBill
291ea33939 Initialize TypePath constructor like to keep the Futex constructor happy 2023-01-04 22:34:59 +00:00
gingerBill
17fa8cb6ef Add extra mutex to TypePth just in case 2023-01-03 18:21:42 +00:00
gingerBill
0fb3032b73 General improves to alloc_ast_node and other unnecessary checks 2023-01-03 14:45:09 +00:00
gingerBill
747a11a954 Allow all set entry types to be implicitly cast to their key/value type to allow for easier iteration 2023-01-03 12:18:35 +00:00
gingerBill
7ffffeeccc Comment out many mutex guards in type_(size|align)_of_internal 2023-01-02 21:35:40 +00:00
gingerBill
5b335bb88c Narrow g_type_mutex usage 2023-01-02 20:48:24 +00:00
gingerBill
5c519f0e8d Remove the synchronization primitive init/destroy calls 2023-01-01 16:19:21 +00:00
gingerBill
c1384afe2f Merge branch 'master' into compiler-improvements-2022-12 2023-01-01 13:10:49 +00:00
Phil
0bb93d40d3 fixup are_types_identical for comparing procs and checking if parameter names differ 2022-12-29 16:10:13 -08:00
gingerBill
3040361fac Correct type_ptr_set_update and type_ptr_set_exists 2022-12-20 14:59:00 +00:00
gingerBill
8fc9566a83 Use *_set_update where possible 2022-12-20 14:19:55 +00:00