gingerBill
a2f02b8b32
Fix bug with for in statements and pointer intervals
2023-02-21 16:31:22 +00:00
gingerBill
ee4ed126e1
Improve error message for accidentally using a type as an expression statement
2023-02-21 16:25:28 +00:00
gingerBill
51ae21a029
Separate check_stmt code into separate procedures
2023-02-01 23:40:42 +00:00
gingerBill
c45ca1bfcc
Correct arena_temp_end usage when no allocation ever happens for that arena
2023-01-28 12:09:24 +00:00
gingerBill
36764779cf
Add extra add_type_info_type calls
2023-01-23 14:09:55 +00:00
gingerBill
1ab90de493
Minimize StringMap structure usage
2023-01-14 12:33:42 +00:00
gingerBill
520ff731de
Add ArenaTemp to the compiler
2023-01-12 00:47:20 +00:00
gingerBill
d06a0e7093
Improve the PtrSet to be as simple and small as possible
2023-01-04 13:30:27 +00:00
gingerBill
855ebceadc
Minimize add_type_info_type usage
2023-01-03 17:26:05 +00:00
gingerBill
c7a704d345
Use RwMutex for the Scope
2023-01-03 15:26:47 +00:00
gingerBill
69934c3b0b
More for_array(i, y) to for (x : y) translations
2023-01-03 13:04:09 +00:00
gingerBill
252be0fb41
Make all maps use heap allocator implicitly
2023-01-03 11:59:52 +00:00
gingerBill
600f2b7284
Use heap_allocator for all hash set types
2023-01-03 11:53:59 +00:00
gingerBill
9b278db993
Revert "Change tav to be a pointer internally"
...
This reverts commit e98f1a28e6 .
2022-12-22 12:01:41 +00:00
gingerBill
e98f1a28e6
Change tav to be a pointer internally
2022-12-22 11:53:13 +00:00
gingerBill
8fc9566a83
Use *_set_update where possible
2022-12-20 14:19:55 +00:00
gingerBill
c1f5be24e2
Remove dead code in the compiler
2022-12-18 22:49:10 +00:00
gingerBill
690666537c
Add gb_internal to checker
2022-12-18 21:46:27 +00:00
gingerBill
144e357fd2
Add extra check
2022-12-09 11:37:15 +00:00
gingerBill
34a048f7da
Replace compiler for loops for the hash-table types to simplify code usage
2022-12-09 11:29:28 +00:00
gingerBill
d88b052d2d
Naïve optimization of named _split_ multiple return valued when defer is never used
...
This is a naïve optimization but it helps a lot in the general case where callee temporary stack variables
are not allocated to represent the named return values by using that specific memory.
In the future, try to check if a specific named return value is ever used a `defer` within a procedure or not,
or is ever passed to a nested procedure call (e.g. possibly escapes).
2022-11-25 23:57:55 +00:00
Lucas Perlind
73c1f08776
Improve error messages with 'using _'
2022-10-15 19:46:17 +11:00
gingerBill
0859ccc5c0
Disable buggy escape analysis
2022-09-08 17:13:37 +01:00
gingerBill
c2809c2948
Improve basic escape analysis
2022-09-02 16:23:16 +01:00
gingerBill
8fd5bef0bd
Fix #1977
2022-08-26 12:14:04 +01:00
gingerBill
776927709b
Check for using variables
2022-08-26 12:11:27 +01:00
gingerBill
af1b3b6368
Correct check_expr_is_stack_variable
2022-08-24 16:03:04 +01:00
gingerBill
d56789e5a7
Add very basic escape analysis on return values
2022-08-24 15:58:20 +01:00
gingerBill
576914aee1
Make unreachable() a built-in compiler-level procedure
2022-08-05 11:57:33 +01:00
gingerBill
ea42613fec
Improve error message with suggestion for #1866
2022-06-28 11:27:50 +01:00
gingerBill
f3868ac932
Improve missing handled results for built in procedures
2022-05-30 15:57:26 +01:00
gingerBill
5b42dd7707
Correct @(require_results) on parapoly procedures
2022-05-30 15:27:09 +01:00
gingerBill
410b85b5c7
Disallow @(thread_local) on wasm targets
2022-02-28 15:40:00 +00:00
gingerBill
67ce0ec29f
Improve printing for unhandled cases by adding a new line before the cases
2022-02-05 14:58:13 +00:00
gingerBill
3439139b1c
Minor clean up
2022-02-05 14:34:29 +00:00
gingerBill
dd84b61cc8
Correct add_to_seen_map logic
2022-02-05 14:07:17 +00:00
gingerBill
b8c4bf2afb
Add #partial [Enum]Type{...} support to check for missing enumerated array fields
2022-02-05 14:02:21 +00:00
gingerBill
24e7356825
Add #no_type_assert and #type_assert to disable implicit type assertions with x.(T)
2022-01-27 16:08:47 +00:00
gingerBill
7cc265e14c
Add mutex guards for signature scopes
2022-01-10 14:50:28 +00:00
gingerBill
defc1672c3
Revert fix #1344
2022-01-03 13:48:12 +00:00
gingerBill
12f459b5fb
Fix #1344
2022-01-03 13:12:39 +00:00
gingerBill
0548db4230
Disallow @(static) and @(thread_local) within defer statements
2021-12-17 11:06:17 +00:00
gingerBill
f47311f2f6
Remove scope field from Ast
2021-11-14 15:22:40 +00:00
gingerBill
3f038428a7
Begin minimizing Ast size
2021-11-14 15:12:37 +00:00
gingerBill
541beb615b
Move more things to PtrMap
2021-11-05 17:13:07 +00:00
gingerBill
c9effb9b9f
Correct ternary if expression type determination
2021-10-22 14:37:27 +01:00
gingerBill
48de1a01a9
Correct update propagation of type for ternary if expressions
2021-10-22 13:14:19 +01:00
gingerBill
b88e945268
ERROR_BLOCK() any usages of "Did you mean?" like behaviour whilst iterating across a scope entry map
2021-08-27 12:14:51 +01:00
gingerBill
b33bf3f704
Correct race condition and incorrect usage of condition_signal outside of a mutex lock
2021-08-26 22:17:51 +01:00
gingerBill
382ca20916
Correct procedure checking flag handling, and correct the (bodge) handle of unchecked procedure bodies
2021-08-23 19:24:53 +01:00