gingerBill
|
e692efbe09
|
Improve update expr type semantics for ternary expressions
|
2021-07-10 11:08:51 +01:00 |
|
gingerBill
|
f6c1a5bf6e
|
Merge branch 'master' of https://github.com/odin-lang/Odin
|
2021-07-09 15:33:30 +01:00 |
|
gingerBill
|
6afc28f827
|
Use builtin.min and builtin.max in package slice
|
2021-07-09 15:33:25 +01:00 |
|
gingerBill
|
35230b1a11
|
Add "Suggestion: Did you mean?" for selector expression typos
|
2021-07-08 23:15:07 +01:00 |
|
gingerBill
|
7acbf8b7b9
|
Add slice.min and add slice.max
|
2021-07-08 11:23:07 +01:00 |
|
gingerBill
|
f7413ca974
|
Fix thread_unix.odin
|
2021-07-05 16:36:07 +01:00 |
|
gingerBill
|
9b3a0251ca
|
Use or_else in the core library when it makes sense
|
2021-07-05 16:33:01 +01:00 |
|
gingerBill
|
3b9ca8535f
|
Fix comments
|
2021-07-05 16:26:11 +01:00 |
|
gingerBill
|
a98eee145d
|
Remove try; Replace try x else y with or_else(x, y)
|
2021-07-05 16:23:13 +01:00 |
|
gingerBill
|
c6b9b3b9a4
|
Fix try parsing for expression statements
|
2021-07-04 22:52:12 +01:00 |
|
gingerBill
|
a4be1a5e4c
|
delete_key now returns the deleted key and deleted value (if found)
|
2021-07-04 18:52:47 +01:00 |
|
gingerBill
|
ee908c00de
|
Add documentation for the overview of package fmt
|
2021-07-04 18:21:41 +01:00 |
|
gingerBill
|
46264032aa
|
Improve error messages for try expressions
|
2021-07-04 12:50:44 +01:00 |
|
gingerBill
|
4b831dbddd
|
Try try and or_else built-in procedures with operators try and try else
|
2021-07-04 12:37:21 +01:00 |
|
gingerBill
|
a01d6dcea7
|
Refactor return logic to be more reusable with lb_emit_try
|
2021-07-04 01:57:38 +01:00 |
|
gingerBill
|
01a15f78e6
|
Simplify lb_emit_try return logic
|
2021-07-04 01:50:37 +01:00 |
|
gingerBill
|
5f71c41582
|
Fix lb_emit_try
|
2021-07-04 01:47:43 +01:00 |
|
gingerBill
|
e8f2c5a48a
|
[Experimental] Add 'try' and `or_else' built-in procedures
|
2021-07-04 01:38:43 +01:00 |
|
gingerBill
|
1c76577918
|
Add slice.sort_by_cmp Ordering based sorting algorithms
|
2021-07-03 15:16:44 +01:00 |
|
gingerBill
|
4285b58aaa
|
Add #no_bounds_check to linalg procedures
|
2021-07-03 14:38:41 +01:00 |
|
gingerBill
|
9cc366de97
|
Be more consistent with runtime intrinsics usage
|
2021-07-03 14:38:15 +01:00 |
|
gingerBill
|
212d294b84
|
Deprecate sort.slice and sort.reverse_slice
|
2021-07-03 14:37:55 +01:00 |
|
gingerBill
|
d6125f05d4
|
Correct does_field_type_allow_using
|
2021-06-29 12:35:15 +01:00 |
|
gingerBill
|
ad22eda87c
|
Improve linalg.transpose type determination for square matrices
|
2021-06-28 13:23:28 +01:00 |
|
gingerBill
|
8d31ba492d
|
Fix #1042
|
2021-06-28 11:32:23 +01:00 |
|
gingerBill
|
8f611b3399
|
Fix #1043
|
2021-06-28 11:21:03 +01:00 |
|
gingerBill
|
618f858930
|
Merge branch 'master' of https://github.com/odin-lang/Odin
|
2021-06-28 11:06:00 +01:00 |
|
gingerBill
|
185277a2b6
|
Fix swizzling of pointers to arrays
|
2021-06-28 11:05:52 +01:00 |
|
gingerBill
|
76d3bab955
|
Modify scope finding rules for distinct types in lb_debug_type
|
2021-06-27 12:21:11 +01:00 |
|
gingerBill
|
abda75feee
|
Add bufio.Lookahead_Reader
|
2021-06-26 23:45:45 +01:00 |
|
gingerBill
|
a779cb2798
|
Fix #1044
|
2021-06-26 23:31:04 +01:00 |
|
gingerBill
|
5e42675b42
|
Allow alternative syntax for offset_of: offset_of(Type, field), offset_of(value.field)
|
2021-06-26 23:19:46 +01:00 |
|
gingerBill
|
11c565e199
|
Fix semicolon insertion rule for ---
|
2021-06-26 22:47:12 +01:00 |
|
gingerBill
|
d8940f5fd7
|
Support compound literals for struct #raw_union types
|
2021-06-26 12:08:14 +01:00 |
|
gingerBill
|
74dee82dbf
|
Fix compiler errors
|
2021-06-25 14:33:42 +01:00 |
|
gingerBill
|
f1cf724bd4
|
Add bufio.Scanner
|
2021-06-25 14:31:35 +01:00 |
|
gingerBill
|
fc809d3fad
|
Merge branch 'master' of https://github.com/odin-lang/Odin
|
2021-06-24 19:41:36 +01:00 |
|
gingerBill
|
42d135aade
|
Change logic for comparison against nil for array-like data types (compare the pointer rather than the length/capacity)
|
2021-06-24 19:39:51 +01:00 |
|
gingerBill
|
3803bdff5f
|
Allow bufio.Reader and bufio.Writer to have a configurable max_consecutive_empty_(reads|writes) field
|
2021-06-24 15:56:58 +01:00 |
|
gingerBill
|
0a94a67190
|
Merge branch 'master' of https://github.com/odin-lang/Odin
|
2021-06-24 15:55:50 +01:00 |
|
gingerBill
|
8dcb14fbc2
|
Add helper procedures for strings.Reader creation
|
2021-06-24 15:55:42 +01:00 |
|
gingerBill
|
1e9cc058a0
|
Update hash.crc32 to use slicing-by-8 algorithm to improve throughput by ~3.5x
|
2021-06-24 00:03:59 +01:00 |
|
gingerBill
|
bb3ffdbdfb
|
Merge branch 'master' of https://github.com/odin-lang/Odin
|
2021-06-23 14:55:53 +01:00 |
|
gingerBill
|
fcf7cf973b
|
Add documentation for -verbose-errors
|
2021-06-23 14:55:40 +01:00 |
|
gingerBill
|
abe728dbbb
|
Add intrinsics.type_is_endian_platform
|
2021-06-17 20:39:00 +01:00 |
|
gingerBill
|
574ceb37a9
|
Correct selector call expression chaining behaviour (a bit of a hack)
|
2021-06-16 17:04:05 +01:00 |
|
gingerBill
|
dbdc4471c2
|
Fix double evaluation bug with selector call expressions x->y(z)
|
2021-06-16 14:03:12 +01:00 |
|
gingerBill
|
af95381bf8
|
Add missing -> ! annotation
|
2021-06-16 12:12:24 +01:00 |
|
gingerBill
|
41f2539484
|
Improve logic for diverging procedures by checking if it terminates
|
2021-06-16 12:07:24 +01:00 |
|
gingerBill
|
8f57bb0799
|
Add unreachable detection for deferred statements in a scope which contains a diverging procedure call
```odin
{
defer foo(); // Unreachable defer statement due to diverging procedure call at the end of the current scope
os.exit(0);
}
```
|
2021-06-16 11:41:29 +01:00 |
|
gingerBill
|
84a4188c72
|
Fix #1017
|
2021-06-15 01:16:19 +01:00 |
|
gingerBill
|
31f1e0aeae
|
Fix #1019
|
2021-06-15 01:13:16 +01:00 |
|
gingerBill
|
4b8cbb5a3b
|
Fix #1015
|
2021-06-14 13:26:28 +01:00 |
|
gingerBill
|
3e7aabe6d8
|
Change uses for parapoly records to use $ always
|
2021-06-14 11:43:35 +01:00 |
|
gingerBill
|
d4df325e0a
|
Just create context when required
|
2021-06-14 11:41:50 +01:00 |
|
gingerBill
|
9f8a63cb43
|
More minor stylization changes (remove unneeded parentheses)
|
2021-06-14 11:34:31 +01:00 |
|
gingerBill
|
6f745677b4
|
Minor formatting changes
|
2021-06-14 11:30:00 +01:00 |
|
gingerBill
|
86649e6b44
|
Core library clean up: Make range expressions more consistent and replace uses of .. with ..=
|
2021-06-14 11:15:25 +01:00 |
|
gingerBill
|
3ca887a60a
|
Add struct_fields_zipped and enum_fields_zipped (allowing for iteration through an #soa slice)
|
2021-06-14 11:04:51 +01:00 |
|
gingerBill
|
312a1e8a94
|
Fix context logic
|
2021-06-13 16:00:20 +01:00 |
|
gingerBill
|
9a311ab9e7
|
Remove dead code
|
2021-06-12 16:47:20 +01:00 |
|
gingerBill
|
7d92eaaeb2
|
Correct context logic in lb_build_addr
|
2021-06-12 16:45:44 +01:00 |
|
gingerBill
|
582f423b67
|
Improve vector arithmetic generation for array programming operations
|
2021-06-12 16:37:20 +01:00 |
|
gingerBill
|
c2524464f9
|
Fix remove_temp_files
|
2021-06-12 16:23:41 +01:00 |
|
gingerBill
|
55e472cdb6
|
Fix linkage problem for procedures required by LLVM
|
2021-06-10 12:23:08 +01:00 |
|
gingerBill
|
e6ad773a88
|
Minor code clean up
|
2021-06-09 23:47:44 +01:00 |
|
gingerBill
|
82eae32bca
|
Improve code generation for type switch statements to use a jump table by default
|
2021-06-09 23:46:00 +01:00 |
|
gingerBill
|
b0e21bd616
|
Allow trivial optimizations for switch statements of typeid
|
2021-06-09 23:05:37 +01:00 |
|
gingerBill
|
7b88bed098
|
Do trivial SwitchInstr optimization for constant case switch statements
|
2021-06-09 22:55:08 +01:00 |
|
gingerBill
|
28abf5d33b
|
Correct minimum dependency for complex32
|
2021-06-08 21:20:33 +01:00 |
|
gingerBill
|
fb8ad338d0
|
Keep -vet happy
|
2021-06-08 18:26:38 +01:00 |
|
gingerBill
|
ee60be0137
|
Improve code generation hints for return statements which return by pointer
|
2021-06-08 17:17:53 +01:00 |
|
gingerBill
|
9efd4c5097
|
Aid code generation on non-release builds
|
2021-06-08 17:17:24 +01:00 |
|
gingerBill
|
f30e6f50bd
|
Reorganize code to improve code generation
|
2021-06-08 16:21:19 +01:00 |
|
gingerBill
|
8ec2ca9dcd
|
Remove context.thread_id
|
2021-06-08 15:57:00 +01:00 |
|
gingerBill
|
f19bb0f4d4
|
Make default calling convention code more correct to read
|
2021-06-08 14:33:49 +01:00 |
|
gingerBill
|
76bb82a726
|
Minor alignment cleanup for swizzle load
|
2021-06-08 14:27:36 +01:00 |
|
gingerBill
|
8e62f9c83c
|
Correct is_operand_value for Swizzle addressing modes
|
2021-06-08 14:23:44 +01:00 |
|
gingerBill
|
696f758435
|
Fix and improve swizzle loads for ordered indices
|
2021-06-08 14:19:27 +01:00 |
|
gingerBill
|
6421152104
|
Fix show-timings header for -lld on windows
|
2021-06-08 13:19:19 +01:00 |
|
gingerBill
|
1e989f5c10
|
Fix -lld on Windows
|
2021-06-08 13:10:22 +01:00 |
|
gingerBill
|
3eb42ecb55
|
Minor improvements to -use-separate-modules
|
2021-06-08 13:00:20 +01:00 |
|
gingerBill
|
286cb60c45
|
Minor changes to tools/odinfmt
|
2021-06-08 12:18:55 +01:00 |
|
gingerBill
|
28e9a4f79c
|
Replace js_wasm32 with freestanding_wasm32
|
2021-06-08 12:18:26 +01:00 |
|
gingerBill
|
e79fb68291
|
Correct #soa type creation
|
2021-06-08 11:23:23 +01:00 |
|
gingerBill
|
16eaa17ed9
|
Fix -target:js_wasm32 for core:runtime
|
2021-06-08 11:20:39 +01:00 |
|
gingerBill
|
9491c13a5c
|
Fix #1011 by unifying the logic
|
2021-06-08 11:09:41 +01:00 |
|
gingerBill
|
8d8adac1b4
|
Fix lb_build_defer_stmt
|
2021-06-08 10:43:11 +01:00 |
|
gingerBill
|
ba6c63e366
|
Fix full_path_from_name allocator behaviour
|
2021-06-08 10:14:35 +01:00 |
|
gingerBill
|
963b1a12d7
|
Correct code for #simd in unions
|
2021-06-06 16:56:03 +01:00 |
|
gingerBill
|
89890d7900
|
Correct union tag size for large alignments
|
2021-06-06 16:34:51 +01:00 |
|
gingerBill
|
661fcad895
|
Add examples/all which imports every package
This is useful for knowing what exists and producing documentation with `odin doc`
|
2021-06-06 13:05:54 +01:00 |
|
gingerBill
|
cef16feb0b
|
Fix #861 - Add extra check on missing main
|
2021-06-06 12:46:59 +01:00 |
|
gingerBill
|
84b851f578
|
Add warning to variables which may overflow the stack on declaration; #Fix 661
|
2021-06-06 12:42:39 +01:00 |
|
gingerBill
|
785c27daa7
|
Fix 128-bit integer to float cast by explicitly calling the procedure direct; Fix #781
|
2021-06-06 12:35:38 +01:00 |
|
gingerBill
|
795a5910cf
|
Add support for Addressing_OptionalOkPtr
Allowing for `i, ok := &x.(T);` (type assertions) and `v, ok := &m[k];` (map indexing)
|
2021-06-06 12:18:45 +01:00 |
|
gingerBill
|
4c21f9495d
|
Clean up lbAddr_Swizzle logic for load and store
|
2021-06-05 23:56:59 +01:00 |
|
gingerBill
|
f119fd1ee1
|
Use shufflevector when possible for lbAddr_Swizzle load
|
2021-06-05 22:50:23 +01:00 |
|
gingerBill
|
46ab822316
|
Improved lb_build_assign_stmt_array logic
|
2021-06-05 22:07:39 +01:00 |
|
gingerBill
|
104aea9f42
|
Improve error message for addressing a swizzle intermediate array value
|
2021-06-05 18:25:51 +01:00 |
|