gingerBill
9941ec85d8
Fix #2578 (check for fallthrough)
2023-06-07 12:18:21 +01:00
gingerBill
e0530df98a
Support #reverse for strings
2023-05-29 23:45:21 +01:00
gingerBill
b848ae7abb
Improve error message for #reverse on an interval
2023-05-29 23:27:42 +01:00
gingerBill
f07453d0ae
Support #reverse on #soa arrays
2023-05-29 23:24:03 +01:00
gingerBill
97490c6445
Basic support for #reverse for in on normal arrays
2023-05-29 23:17:06 +01:00
gingerBill
d5a8f2298e
Restrict --- to variable declarations only
2023-05-22 12:37:26 +01:00
gingerBill
56c0d32ea0
Fix #2526
2023-05-18 11:52:16 +01:00
gingerBill
5da76ae34b
Add struct #no_copy
2023-04-15 15:37:32 +01:00
gingerBill
93f7d3bfb9
Allow case nil within a type switch statement (experimental idea)
2023-03-12 16:33:21 +00:00
gingerBill
3d325e52c6
Merge branch 'master' of https://github.com/odin-lang/Odin
2023-02-22 21:50:51 +00:00
gingerBill
6a6d7701f9
Improve error bounds for check_comparison
2023-02-22 21:50:49 +00:00
Tetralux
ef99d03f21
Remove debug print
2023-02-22 21:43:42 +00:00
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