Commit Graph

1259 Commits

Author SHA1 Message Date
kalsprite
973d90d7b1 enforce matrix size limits on mul; overflow dims 2026-08-11 21:31:36 -07:00
corley
87912a8b88 fixes range loop over array elements in soa containers 2026-08-11 03:20:13 +03:00
Jeroen van Rijn
3ac03e27b2 Merge pull request #7270 from corleypc/soa-array-elem-indexing-fix
Fixes chain indexing for array elements in soa containers
2026-08-09 21:55:47 +02:00
corley
e374541599 fixes chained indexing for soa containers with array element type 2026-08-09 22:23:32 +03:00
kalsprite
1a631b2f3f Fix constant string16 carrying UTF-8, and inverted slice indices reaching substring (#7268)
* str16 fix

* remove stale call
2026-08-09 21:22:13 +02:00
corley
7b45adf8e9 fixes swizzling for array elements in soa arrays/slices 2026-08-09 03:17:04 +03:00
kalsprite
3756aae0f8 incorp specialized-vs-generic poly 2026-08-07 17:58:35 -07:00
kalsprite
b475525997 Merge branch 'master' into poly 2026-08-07 17:41:30 -07:00
kalsprite
6276f6e12f src/check_expr.cpp 2026-08-06 21:51:03 -07:00
kalsprite
8b56b15ee2 make value poly score top 2026-08-06 21:05:54 -07:00
gingerBill
cce7159a55 Merge pull request #7208 from Taylbr/poly-proc-fix
Fix: Polymorphic procedures resolving to nil + further fixes
2026-08-05 16:56:34 +02:00
Jeroen van Rijn
9876fc3b9b Merge pull request #7226 from kalsprite/prefix
crash fix on poly
2026-08-05 12:44:31 +02:00
kalsprite
ab220ecee7 scoring experiment 2026-08-04 20:10:01 -07:00
kalsprite
91aec259c0 crash fix on poly 2026-08-04 19:15:24 -07:00
Jeroen van Rijn
e8e12a24b5 Merge pull request #7225 from kalsprite/field_list
minor typos
2026-08-05 04:06:05 +02:00
kalsprite
29c9c132b0 minor typos 2026-08-04 18:49:33 -07:00
Jeroen van Rijn
5c96963ec6 Merge pull request #7222 from kalsprite/header_suppressed
fix new line suppression
2026-08-05 03:37:21 +02:00
kalsprite
2e3815acdf fix new line suppression 2026-08-04 18:16:25 -07:00
Jeroen van Rijn
f1dc9ce3c1 Merge pull request #7220 from kalsprite/i64_const
fix: Signed Int Constants permitted to exceed size
2026-08-05 03:09:29 +02:00
kalsprite
cd6a913e55 fix: oob signed int consts 2026-08-04 17:34:36 -07:00
kalsprite
439ab0a52e Merge branch 'master' into upstream_fixes 2026-08-04 17:02:36 -07:00
kalsprite
49f1ea6d2a fix: named operands dont advance 2026-08-04 17:00:04 -07:00
Brody
7945cf3ac3 Merge branch 'master' into poly-proc-fix 2026-08-05 00:19:06 +10:00
Brody
91e0e6ce47 fix: record resolved entity for proc-typed default values 2026-08-04 19:12:08 +10:00
gingerBill
39e5d78aba Improve error handling on set in set comparisons to suggest using <= instead 2026-08-03 15:01:51 +01:00
Brody
87b514890c fix: instantiated procs keep their own scope
Was this check here for a reason? Investigate
2026-08-03 22:07:18 +10:00
Brody
cce1bdd8c7 fix: return true for already specialised poly proc 2026-08-03 21:42:39 +10:00
Brody
df6719cb89 fix: remove broken special case for poly proc as default value 2026-08-03 18:13:12 +10:00
aelobdog
d8eb6e0481 fix: expand_values panic on type expressions 2026-07-30 00:26:12 +05:30
aelobdog
39cbaf0494 fix: reject the use of labels as expressions 2026-07-25 19:28:56 +05:30
gingerBill
f34870f232 Merge pull request #7064 from tf2spi/7027-add-constant-typeid-comparison
Add typeid constant case to check_comparison
2026-07-16 11:18:39 +01:00
gingerBill
3f2a66044b Merge pull request #7056 from korvahkh/fix-untyped-coercion
Stricter type coercions in `convert_to_typed`
2026-07-16 11:15:41 +01:00
Jeroen van Rijn
0051152f76 Merge pull request #7042 from catermujo/push-nyzmuzxuzpox
compiler: preserve recursive struct aliases
2026-07-16 10:21:31 +02:00
misomosi
dac6e7dbad Add typeid constant case to check_comparison 2026-07-15 21:54:34 -04:00
korvahkh
f36ed5e668 Stricter type coercions in convert_to_typed
There were issues similar to #6923 with
arrays, matrices, & SIMD vectors.
This PR addresses those.
2026-07-15 10:26:15 -05:00
Isabella Basso
ca878a1de7 checker: keep polymorphic probes read-only
Overload candidate checks pass modify_type=false, but generic array
counts still specialized their candidate Type and scope entity. Parallel
probes could then observe and mutate the same partial specialization.

Resolve generic dimensions in local state and commit them only when
specializing. Keep array-like and map cache updates out of probe mode.
2026-07-15 08:51:43 -03:00
Isabella Basso
6299379911 compiler: preserve recursive struct aliases
fixes: #7037
2026-07-14 09:42:06 -03:00
RoBaertschi
c44740f570 Fix #6979 2026-07-09 14:14:05 +02:00
Jeroen van Rijn
0c7fc0b416 Fix #6982 2026-07-09 00:32:41 +02:00
gingerBill
9050e6b8cd Merge pull request #6950 from tf2spi/6840-check-any-int-addressing
Disallow types in #any_int params
2026-07-04 16:12:16 +01:00
misomosi
5b24b47e9c Disallow types in #any_int params 2026-07-03 10:04:41 -04:00
gingerBill
55a1876d5b Merge pull request #6934 from tf2spi/6675-patch-load-or-else-diverging
Make diverging or_else inherit load lhs type
2026-07-03 13:07:19 +01:00
misomosi
aa53466cb6 Make diverging or_else inherit lhs type 2026-07-02 13:22:03 -04:00
gingerBill
1007ea2785 Merge pull request #6921 from tf2spi/6757-array-programming-cast
Allow casts to change mode for array programming
2026-07-02 14:06:50 +01:00
gingerBill
dadcfafb7d Merge pull request #6925 from tf2spi/6923-check-untyped-to-union-conversion
Make checking of untyped to union conversions more strict
2026-07-02 14:01:41 +01:00
gingerBill
c9f069be20 Merge pull request #6929 from korvahkh/fix-union-typo
Fix typo in union error: excepts -> accepts
2026-07-02 14:01:07 +01:00
korvahkh
fdb1a2c01b Fix typo in union error: excepts -> accepts
Before:
```
foo.odin(4:24) Error: Cannot convert untyped value '""' to 'union {int, bool}' from 'untyped string'
	u: union{int, bool} = ""
	                      ^^
'union {int, bool}' is a union which only excepts the following types:
	'int' or 'bool'
```
After:
```
foo.odin(4:24) Error: Cannot convert untyped value '""' to 'union {int, bool}' from 'untyped string'
	u: union{int, bool} = ""
	                      ^^
'union {int, bool}' is a union which only accepts the following types:
	'int' or 'bool'
```
2026-07-01 21:07:31 -05:00
Mike
7ccbd3d4ec Fix compiler segmentation fault when field names start with '.' 2026-07-01 21:55:11 -03:00
misomosi
ae1280d6f9 Convert untyped to variant type unconditionally 2026-07-01 12:54:06 -04:00
misomosi
a2a0b83162 Allow casts to change mode for array programming 2026-07-01 07:59:08 -04:00