gingerBill
25bec19b1f
Revert "Minor improvement to multi return value reducing stack usage"
2022-11-13 23:56:05 +00:00
gingerBill
a705a2e38b
Minor improvement to multi return value reducing stack usage
2022-11-13 22:55:32 +00:00
gingerBill
16fc961010
Begin work on map static set
2022-11-11 14:45:22 +00:00
gingerBill
a71daee545
Allow for -use-static-map-calls which generates a get procedure per map; add runtime.map_get
2022-11-08 14:58:05 +00:00
gingerBill
810a1eee41
Remove the need for type->Map.internal_type and replace with the definition of runtime.Raw_Map
2022-11-08 11:13:46 +00:00
gingerBill
c96e0afbf1
Begin work on implementing the new map internals
2022-11-07 23:02:21 +00:00
JasperGeer
4b8721a0bb
check addressing mode instead
2022-10-26 10:11:10 -04:00
JasperGeer
1a0930f841
don't suggest u8 slice cast to string for u8 slice literal
2022-10-23 19:41:07 -04:00
Jasper Geer
989107094c
throw type checker error when scalar cast to non-square matrix
2022-10-21 15:41:58 -04:00
gingerBill
098f51aa80
Allow transmute to be constant for integers of the same internal endianness
2022-10-19 16:59:38 +01:00
gingerBill
047d45584e
Fix #2016 when passing an untyped integer to a generic typeid parameter
2022-10-11 21:21:56 +01:00
gingerBill
6fe1825db9
Improve error message for slicing an enumerated array
2022-09-22 00:47:23 +01:00
gingerBill
b15968f140
Improve suggestions for certain assignments
2022-09-22 00:42:03 +01:00
gingerBill
0ddf1bf660
Minor style change
2022-09-22 00:36:31 +01:00
gingerBill
dade5b5ef2
Improve error message for check_is_expressible (Cannot convert X to Y from Z)
2022-09-22 00:34:36 +01:00
gingerBill
3aea9a7c20
Improve error messages for compile time known bounds checking
2022-09-22 00:30:10 +01:00
gingerBill
8c3f01fbfa
Correct parapoly determination of generated internal type of a map
2022-09-22 00:05:11 +01:00
gingerBill
eb7a9c55b0
Improve parapoly support for ^T to [^]$V and vice versa
2022-09-20 22:47:53 +01:00
gingerBill
99a1a10286
Fixed #2044 Uninitialised constant struct member values can cause crash
...
Foo :: struct {
x: i32,
data: sa.Small_Array(10, i32),
}
defaultFoo :: Foo{
x = 1,
// The 'data' value is not set!
}
fmt.println(defaultFoo.data) // caused the bug
2022-09-17 11:01:56 +01:00
gingerBill
b1dafcfe6d
Fix #1992 size_of a relative slice crashes the compiler
2022-09-05 16:40:57 +01:00
gingerBill
4998cf80c1
Fix #2017 mismatched types in binary matrix expression for flt * (mat * vec)
2022-09-05 16:35:56 +01:00
gingerBill
37e23133e9
Fix #2018 type assertion on untyped nil within a ternary if expression
2022-09-05 16:06:40 +01:00
JasperGeer
17894add95
Remove redundant code
2022-09-04 16:37:40 -04:00
JasperGeer
23d93f6846
Remove unnecessary or
2022-09-04 16:17:29 -04:00
JasperGeer
2e3dd8dd0b
Err on types passed as operands to ternary if expressions
2022-09-04 15:31:05 -04:00
gingerBill
ed73441a4c
Fix code generation related to Objective-C related x->y() calls
2022-09-01 15:11:53 +01:00
gingerBill
2c004dbcc9
Improve matrix conversion rules
2022-08-16 12:02:14 +01:00
gingerBill
cecadce86d
Allow for chaining of '#load(path) or_else #load(path)'
2022-08-11 14:42:29 +01:00
gingerBill
70dc0c15fd
Improve type hint for #load to allow for string types
2022-08-11 13:43:35 +01:00
gingerBill
38102f14c1
Add #load(path) or_else default in favour of #load_or(path, default)
2022-08-11 13:01:54 +01:00
Jasper Yujin Geer
57dd5ec4db
Added back missing return statement
2022-08-10 18:25:29 -07:00
Jasper Yujin Geer
5b621d5be1
More accurate error message
2022-08-10 18:07:49 -07:00
Jasper Yujin Geer
7aee762f3a
Throw error when untyped shift expressions have non-integral type hints
2022-08-10 17:39:21 -07:00
gingerBill
5e3cf45df3
Add #soa pointer type to aid with refactoring to #soa data types
...
a: #soa[16]Foo
p := &a[6]
#assert(type_of(p) == #soa^#soa[16]Foo)
p^.x = 123
p.x = 123
2022-08-08 15:07:00 +01:00
gingerBill
a58e4d0359
Allow for foo() or_else unreachable() and other diverging procedures
2022-08-05 12:19:57 +01:00
gingerBill
0ebe9ba487
Fix #1901
2022-07-24 22:51:34 +01:00
gingerBill
9f10487678
Fix #1493
2022-07-24 12:59:34 +01:00
gingerBill
eafa5098aa
Fix #1883
2022-07-16 18:03:43 +01:00
gingerBill
041625381c
Fix #1888
2022-07-16 17:36:03 +01:00
gingerBill
abe122ecb7
Implement #1859
2022-06-26 13:13:07 +01:00
gingerBill
bb7f291f5f
Remove simd_rem; Disallow simd_div for integers
2022-06-02 12:10:43 +01:00
gingerBill
5b42dd7707
Correct @(require_results) on parapoly procedures
2022-05-30 15:27:09 +01:00
gingerBill
d0e8a735ba
Add arithmetic operator support for simd vectors; Add intrinsics.simd_and_not
2022-05-26 17:09:46 +01:00
gingerBill
208226dba2
Improve #simd literal support
2022-05-26 14:55:10 +01:00
gingerBill
f308f37ba1
Remove need for simd.splat
2022-05-26 14:51:50 +01:00
gingerBill
63cc8a80a0
Correct parapoly for #simd
2022-05-25 21:29:45 +01:00
gingerBill
1549d01bf7
Restrict swizzle to a power of two for #simd
2022-05-25 21:17:21 +01:00
gingerBill
0203bb657e
Allow for non-constant simd vector compound types
2022-05-25 20:39:22 +01:00
gingerBill
53f0c6ef1a
Add ranges for simd compounds literals
2022-05-25 20:31:31 +01:00
gingerBill
f21e9ee712
Allow basic casting of simd vectors
2022-05-25 18:59:47 +01:00