Christoffer Lerno
|
4fbb42833e
|
- Crash when creating $Type* where $Type is an optional type #2848
- Crashes when using `io::EOF~!` in various unhandled places. #2848
|
2026-01-27 13:32:08 +01:00 |
|
Christoffer Lerno
|
cdabe8fd9e
|
- Create optional with ~ instead of ?. return io::EOF?; becomes return io::EOF~.
- Deprecated use of `?` to create optional.
|
2026-01-20 16:10:28 +01:00 |
|
Christoffer Lerno
|
51364a9d1b
|
Another fix in immediately rethrowing a value in an assignment #2689
|
2026-01-15 23:33:26 +01:00 |
|
Christoffer Lerno
|
0fc1871ddf
|
- Assert on optional-returning-function in a comma expression. #2722
|
2026-01-07 15:53:54 +01:00 |
|
Christoffer Lerno
|
d96624c578
|
Decoupled generics (#2695)
|
2025-12-29 17:01:03 +01:00 |
|
Christoffer Lerno
|
a2c886a2d9
|
- Compiler assert when passing returning CT failure immediately rethrown #2689.
|
2025-12-26 22:02:02 +01:00 |
|
Christoffer Lerno
|
4a25bcc5ee
|
Function referencing in @return? for simplified fault declarations. Check @return? eagerly #2340.
|
2025-11-03 23:49:35 +01:00 |
|
Christoffer Lerno
|
8035991ac3
|
?? with void results on both sides cause a compiler crash #2472
|
2025-09-10 10:47:14 +02:00 |
|
Christoffer Lerno
|
bd9bc118db
|
Allow doc comments on individual struct members, faultdefs and enum values #2427.
|
2025-09-06 16:18:33 +02:00 |
|
Christoffer Lerno
|
69b3263a00
|
- Added path::home_directory, path::documents_directory, path::videos_directory, path::pictures_directory, path::desktop_directory, path::screenshots_directory,
`path::public_share_directory`, `path::templates_directory`, `path::saved_games_directory`, `path::music_directory`, `path::downloads_directory`.
Fix codegen bug in expressions like `foo(x()) ?? io::EOF?` causing irregular crashes.
|
2025-09-06 02:27:10 +02:00 |
|
Christoffer Lerno
|
4625b457fb
|
Add additional checks for phi to prevent miscompilation.
|
2025-08-03 17:46:03 +02:00 |
|
Christoffer Lerno
|
151a28a92a
|
Codegen error in if (try x = (false ? io::EOF? : 1)), i.e. using if-try with a CT known value.
|
2025-08-03 16:28:11 +02:00 |
|
Christoffer Lerno
|
9fe6c77d28
|
Codegen error in if (try x = (true ? io::EOF? : 1)), i.e. using if-try with a known Empty.
|
2025-08-03 13:33:53 +02:00 |
|
Christoffer Lerno
|
869bcf8b2b
|
Removing use of $assignable and deprecate it. Fix regression for stacktraces on MacOS. Added readline_to_stream. Regression: Chaining an optional together with contracts could in some cases lose the optional.
|
2025-07-21 03:20:40 +02:00 |
|
Christoffer Lerno
|
694d297eb8
|
"poison" the current function early when a declaration can't be correctly resolved.
|
2025-07-19 20:49:26 +02:00 |
|
Christoffer Lerno
|
02c0db7b8b
|
Multiline contract comments #2113
|
2025-07-11 01:18:58 +02:00 |
|
Christoffer Lerno
|
a2122e0153
|
Update error message.
|
2025-07-08 00:24:29 +02:00 |
|
Christoffer Lerno
|
e15fdc709f
|
Improve error message when doing a rethrow in a function that doesn't return an optional.
Array indices are now using int64 internally.
|
2025-07-06 20:20:42 +02:00 |
|
Christoffer Lerno
|
13bb2b6690
|
Const Enums From / to ordinal using casts is back. Add "--use-old-enums", deprecating lookup.
|
2025-06-30 21:41:52 +02:00 |
|
Christoffer Lerno
|
20c13c0bb4
|
- Incorrect handling of constant null fault causing compiler crash #2232.
|
2025-06-20 15:29:52 +02:00 |
|
Christoffer Lerno
|
f66cadccd2
|
Add printf format to $assert and $error #2183.
|
2025-06-06 23:50:55 +02:00 |
|
Christoffer Lerno
|
be511b26cd
|
Additional fixes on $define
|
2025-06-06 20:11:58 +02:00 |
|
Christoffer Lerno
|
d6d0e08906
|
Allow inference across && #2172.
|
2025-06-05 14:20:40 +02:00 |
|
Christoffer Lerno
|
6454856fdb
|
String str = "" is now guaranteed to be null terminated. #2083
|
2025-04-16 23:19:28 +02:00 |
|
Christoffer Lerno
|
0beb30c979
|
Updated error message #2037
|
2025-03-19 23:25:56 +01:00 |
|
Christoffer Lerno
|
5c77c9a754
|
- Change distinct -> typedef.
- Order of attribute declaration is changed for `alias`.
- Added `LANGUAGE_DEV_VERSION` env constant.
- Rename `anyfault` -> `fault`.
- Changed `fault` -> `faultdef`.
- Added `attrdef` instead of `alias` for attribute aliases.
|
2025-03-15 20:10:47 +01:00 |
|
Christoffer Lerno
|
b8ae2b06d6
|
Rename @return! to @return?
|
2025-03-12 21:40:30 +01:00 |
|
Christoffer Lerno
|
d5b211a786
|
Fault nameof prefixes the first last module path, for instance std::io::EOF is rendered as io::EOF.
|
2025-03-11 22:46:02 +01:00 |
|
Christoffer Lerno
|
fbc8168bb9
|
Improve error message on foo ?? io::EOF with missing '?' #2036. Fix build on Android
|
2025-03-10 11:02:43 +01:00 |
|
Christoffer Lerno
|
25bccf4883
|
New faults and syntax (#2034)
- Remove `[?]` syntax.
- Change `int!` to `int?` syntax.
- New `fault` declarations.
- Enum associated values can reference the calling enum.
|
2025-03-10 00:11:35 +01:00 |
|
Christoffer Lerno
|
a088a5057a
|
Remove if (catch foo) { case ... } syntax.
|
2025-03-07 22:48:28 +01:00 |
|
Christoffer Lerno
|
2a895ec7be
|
First 0.7 update, removing all deprecated features.
|
2025-03-03 00:32:20 +01:00 |
|
Christoffer Lerno
|
cbacd64987
|
Update tests to (Foo) { ... } syntax.
|
2025-02-18 18:53:30 +01:00 |
|
Christoffer Lerno
|
168c11e006
|
{| |} expression blocks deprecated.
|
2025-02-18 12:50:34 +01:00 |
|
Christoffer Lerno
|
86680279fa
|
Improve inference on ?? #1943.
|
2025-02-10 16:20:33 +01:00 |
|
Christoffer Lerno
|
50c1aac9bb
|
Usage of @noreturn macro is type-checked as if it returns #1913.
|
2025-01-31 16:19:12 +01:00 |
|
Christoffer Lerno
|
6848753a10
|
Warn on if-catch with just a default case #1904.
|
2025-01-29 15:29:09 +01:00 |
|
Christoffer Lerno
|
e40bab2d30
|
Allow (int[*]) { 1, 2 } cast style initialization. Experimental change from [*] to [?]. Fix issue where compile time declarations in expression list would not be handled properly.
|
2025-01-25 22:10:12 +01:00 |
|
Christoffer Lerno
|
eda997545a
|
Fix issue in optimized if lowering.
|
2025-01-24 17:14:34 +01:00 |
|
Christoffer Lerno
|
214e806a33
|
Deprecate `fn void! main() type main functions.
|
2025-01-08 23:17:50 +01:00 |
|
Christoffer Lerno
|
f801372074
|
Optimize temp variables in LLVM.
|
2025-01-06 04:25:47 +01:00 |
|
Christoffer Lerno
|
322c70433b
|
Refactoring, stop using int to bool as cast. Merge make any.
|
2024-12-31 16:32:37 +01:00 |
|
Christoffer Lerno
|
746046c8c0
|
Fix bug where a > 0 ? f() : g() could cause a compiler crash if both returned void!.
|
2024-11-10 01:18:56 +01:00 |
|
Christoffer Lerno
|
08d1b29301
|
Add contracts on @catch / @ok. Taking the $typeof of a wildcard optional returns void!
|
2024-11-05 10:50:38 +01:00 |
|
Christoffer Lerno
|
c013006671
|
Improve infer conversions on constants, e.g. ZString a = foo ? "a" : "b"; #1561
|
2024-10-17 01:20:52 +02:00 |
|
Christoffer Lerno
|
31cd839063
|
Switch to <* *> docs. Fix issue with dynamically loaded C3 libs with other C3 code.
|
2024-10-14 02:14:34 +02:00 |
|
Christoffer Lerno
|
01b087238a
|
Const initializer refactoring. Improve error on "Foo![]" #1477
|
2024-09-24 18:04:39 +02:00 |
|
Christoffer Lerno
|
bca44d1c14
|
Bug with casting anyfault to error.
|
2024-09-15 00:55:22 +02:00 |
|
Christoffer Lerno
|
d39f1a6af0
|
Fix to test.
|
2024-09-02 22:53:54 +02:00 |
|
Christoffer Lerno
|
2506c2579b
|
Prevent loading / storing large structs with LLVM.
|
2024-09-02 01:16:48 +02:00 |
|