Commit Graph
1248 Commits
Author SHA1 Message Date
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 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
gingerBill 882736d330 Merge pull request #6920 from tf2spi/6674-patch-cmp-anonymous-procs
Add ways to diff anon procs with same signature
2026-07-01 11:02:21 +01:00
misomosi eb47032840 Add ways to diff anon procs with same signature 2026-07-01 01:49:35 -04:00
misomosi c7cd4b9e95 Only allow direct CVarArg usage in c_va_start 2026-06-30 14:18:54 -04:00
misomosi fc62110392 Report range type correctly on out-of-bounds 2026-06-29 08:29:14 -04:00
misomosi 5be99bf1c2 Add missing check_is_expressible 2026-06-28 19:25:22 -04:00
gingerBill 910ddb4626 Check for nullptr when none of the options match in a proc group 2026-06-26 15:09:18 +01:00
gingerBill 5ba39f42ea Improve error message on calls with varying argument count 2026-06-23 11:49:00 +01:00
gingerBill 6cf57c1eaa Fix #6863 2026-06-22 13:17:43 +01:00
gingerBill 3834aeec49 Compiler: Improve error propagation when all of the overloads have the same return values 2026-06-22 12:56:25 +01:00
gingerBill 588a8148f2 Remove the now defunct __write_bits and __read_bits 2026-06-22 12:55:33 +01:00
gingerBill a7186b8af0 Minimize error propagation of map[key] indexing 2026-06-22 12:54:02 +01:00