-
Notifications
You must be signed in to change notification settings - Fork 23
Comparing changes
Open a pull request
base repository: SchoolyB/EZ
base: v3.1.1
head repository: SchoolyB/EZ
compare: v3.1.2
- 9 commits
- 9 files changed
- 3 contributors
Commits on May 1, 2026
-
fix(typechecker): handle multi-return and arg validation for module c…
…alls - User-defined module functions with multiple return values now correctly propagate ret_types to the temp symbol, fixing multi-var destructuring like `mut a, b = mod.func()` which previously gave E3006 false positive - E3040 check now catches single-var assignment of multi-return module calls, preventing C type errors from leaking through - Added stdlib argument count validation table covering all stdlib modules, so missing/extra args to functions like io.read_file() are caught by the typechecker instead of leaking C compiler errors
Configuration menu - View commit details
-
Copy full SHA for 5669924 - Browse repository at this point
Copy the full SHA 5669924View commit details -
docs: clarify path resolution semantics for stdlib file functions
All relative paths in io, csv, and sqlite functions resolve from the process working directory, not from source file locations.
Configuration menu - View commit details
-
Copy full SHA for 09d7fae - Browse repository at this point
Copy the full SHA 09d7faeView commit details
Commits on May 2, 2026
-
fix(typechecker): validate argument types for stdlib function calls
Added a table-driven first-argument type checker covering strings, io, maps, crypto, encoding, regex, json, csv, bytes, and sqlite modules. Passing the wrong type (e.g. int to strings.to_upper, string to maps.has_key) now emits E3001 at compile time instead of leaking C compiler errors. Also added a general first-arg-must-be-array check for all arrays.* functions.
Configuration menu - View commit details
-
Copy full SHA for 6f34119 - Browse repository at this point
Copy the full SHA 6f34119View commit details -
fix(typechecker): handle range exprs in import rewriting and in/!in t…
…ype checks Add NODE_RANGE_EXPR to rewrite_labels() so file-scope constants referenced inside range() expressions get properly rewritten during multi-file import merging. Also extend E3085 validation to catch type mismatches when using in/!in with range() (e.g. string !in range(1, 50)).
Configuration menu - View commit details
-
Copy full SHA for 6d2f8c1 - Browse repository at this point
Copy the full SHA 6d2f8c1View commit details -
fix: wire arrays.remove() function
Add arrays.remove(arr, value) which removes the first occurrence of a value from an array. Supports int, float, and string element types. Wired through all four layers: C implementation, header, typechecker, and codegen.
Configuration menu - View commit details
-
Copy full SHA for bfc8f03 - Browse repository at this point
Copy the full SHA bfc8f03View commit details -
Configuration menu - View commit details
-
Copy full SHA for afb8e8c - Browse repository at this point
Copy the full SHA afb8e8cView commit details -
fix(parser,typechecker): parse complex multi-return types and hide in…
…ternal name prefixes Two fixes: 1. Multi-return type parser used read_type_name() for unnamed return slots, which only handles simple identifiers. Array types like [string] were tokenized as separate return types, and map[K:V] was misread as a named return. Switch to parse_complex_type() and add map/func to the is_type disambiguation. 2. Import merging prefixes declaration names (e.g. foo -> mod_foo) but these internal names leaked into every error message. Add original_name fields to all declaration AST structs, preserve them during merging, and use display-name macros in all 28+ error/warning locations so users always see the names they wrote.
Configuration menu - View commit details
-
Copy full SHA for 88c5c3b - Browse repository at this point
Copy the full SHA 88c5c3bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 3df838a - Browse repository at this point
Copy the full SHA 3df838aView commit details -
chore(main): release 3.1.2 (#1605)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for e9c70d9 - Browse repository at this point
Copy the full SHA e9c70d9View commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff v3.1.1...v3.1.2