Commit Graph

5746 Commits

Author SHA1 Message Date
gingerBill
992cad101c Minor mutex rearrangement 2025-09-10 21:16:56 +01:00
gingerBill
549edcc0f9 Use a RwMutex instead of BlockingMutex 2025-09-10 21:00:43 +01:00
gingerBill
34e3d30780 More thread contention removal 2025-09-10 20:51:52 +01:00
gingerBill
0476d33a6c Remove global PtrMap<Type *, GenTypesData *> and store on the TypeNamed directly 2025-09-10 20:45:26 +01:00
gingerBill
d3602ca634 Removal of some old checks 2025-09-10 20:37:39 +01:00
gingerBill
bc36ea4170 Use macro instead of a C++ iterator - for speed
C++ iterators are bad.
2025-09-10 20:11:36 +01:00
gingerBill
228ddd6903 Inline some ptr set iterators 2025-09-10 20:02:39 +01:00
gingerBill
1c648126c7 Move more from heap_allocator() to temporary_allocator() 2025-09-10 19:47:29 +01:00
gingerBill
01258d4817 Multithread "check all scope usages" 2025-09-10 19:38:30 +01:00
gingerBill
a36a8722dc Minimize more thread contention 2025-09-10 19:30:32 +01:00
gingerBill
21b1173076 Minor clean up of permanent/temporary arena usage 2025-09-10 18:20:20 +01:00
gingerBill
af37ba76c1 Use arena in calculate_global_init_order 2025-09-10 18:02:02 +01:00
gingerBill
1e0902677f Multithread min dep set by removing the set itself 2025-09-10 17:29:11 +01:00
gingerBill
60684ff028 Multithread some of the min dep system 2025-09-10 13:39:06 +01:00
gingerBill
70d396c8ad Split type and inline cycles into separate loops 2025-09-10 13:26:07 +01:00
gingerBill
629777b988 Multithread check_update_dependency_tree_for_procedures 2025-09-10 12:42:36 +01:00
Jeroen van Rijn
1d561247f5 Add nullptr checks to more type helpers. 2025-09-09 20:45:32 +02:00
gingerBill
9abc3f67b5 Fix constant procedure parameters when passing literals 2025-09-09 10:36:22 +01:00
gingerBill
0711806c21 Merge pull request #5653 from smoke-y/emptyParen
Fix compiler segfault when trying to use () as type
2025-09-06 12:23:48 +01:00
smoke-y
5f60e7cdc0 formatting 2025-09-05 21:28:49 +05:30
smoke-y
906eddd1d4 formatting 2025-09-05 21:28:00 +05:30
smoke-y
5161731ce0 proc at type lvl seg fault 2025-09-05 11:27:28 +05:30
smoke-y
c01ba41955 fix empty parentheses seg fault 2025-09-05 11:02:01 +05:30
A1029384756
3074146784 skip errors on polymorphic procs when in a proc group with other options 2025-08-28 11:30:47 -04:00
gingerBill
9381040711 Fix parentheses for raddbg expression 2025-08-22 09:32:17 +01:00
gingerBill
46d4f22ef4 Remove debug print 2025-08-22 09:29:44 +01:00
gingerBill
23689d0c01 Improve the raddbg type views generated from fmt-based struct field tags 2025-08-22 09:29:07 +01:00
gingerBill
d5b1fc48fb Add @(raddbg_type_view=<optional-string>)
If no string parameter is provided, then one will be generated from the struct field tags.
The attribute must be applied if the automatic struct field tag approach is to be used.
2025-08-21 17:14:33 +01:00
gingerBill
409e397566 Fix bug with $fn: proc() when passed with a global variable 2025-08-18 21:47:09 +01:00
gingerBill
2648bd8fcd Allow #+feature global-context for @(init) and @(fini) procedures as an interim measure 2025-08-12 09:51:16 +01:00
gingerBill
8df69c95c3 Add -integer-division-by-zero:all-bits 2025-08-10 18:29:08 +01:00
gingerBill
b6e0b48481 Rename block names from div to mod. 2025-08-10 17:58:46 +01:00
gingerBill
4cbcb3ace7 Add shortcut for unsigned_x/power_of_two -> unsigned_x >> log2(power_of_two) 2025-08-10 17:53:07 +01:00
gingerBill
da76c743e9 Add shortcut for division by a constant 2025-08-10 17:42:49 +01:00
gingerBill
ecb6b35da5 Fix name canonicalization for named specialized forms 2025-08-10 15:29:53 +01:00
gingerBill
983f3ec423 Add #+feature global-context
This allows to use of `context` in the global scope on a per file basis.
2025-08-10 15:03:30 +01:00
gingerBill
1524b40bc9 Merge pull request #5556 from odin-lang/bill/division-by-zero
Define Integer Division By Zero
2025-08-10 14:48:33 +01:00
gingerBill
a0ff05e633 Merge pull request #5558 from odin-lang/bill/init-fini-changes
`@(init)` & `@(finit)` Changes.
2025-08-10 12:47:15 +01:00
janga-perlind
5db6ea8354 Do not check for explicit allocators when determining proc in proc group 2025-08-09 12:37:15 +10:00
gingerBill
786d454443 Merge pull request #5559 from Creativty/variable_dereference_suggestion
Improve dereference missing suggestion message
2025-08-08 15:34:45 +01:00
xenobas
443dd566e3 Add a better suggestion for cases that don't need ^ operator 2025-08-08 14:40:43 +01:00
gingerBill
0c7260e701 Update src/main.cpp
Co-authored-by: Itzik Shneorson <35134559+itziksn@users.noreply.github.com>
2025-08-08 12:37:36 +01:00
gingerBill
06e48099ca Improve error message 2025-08-08 12:23:22 +01:00
gingerBill
b86932c03c Disallow proc "odin" procedures to be called in the global scope in variable declarations 2025-08-08 12:21:50 +01:00
gingerBill
7642e0a0e0 Require @(init) and @(fini) to be proc "contextless" () 2025-08-08 12:10:01 +01:00
gingerBill
8c1eda3e3a Handle fixed_point_div and fixed_point_div_sat 2025-08-08 11:10:01 +01:00
gingerBill
7b5cee9f1e Correct #+feature check 2025-08-08 10:50:24 +01:00
gingerBill
ee01643229 Add -integer-division-by-zero:self 2025-08-08 10:41:05 +01:00
gingerBill
991883d0e1 Add #+feature integer-division-by-zero:<string> 2025-08-08 10:24:44 +01:00
gingerBill
e4a0228a80 Define the behaviour of integer division by zero 2025-08-08 10:00:11 +01:00