Christoffer Lerno
|
0eee9daf1d
|
Macros generating lambdas now actually is a thing.
|
2023-06-22 23:42:40 +02:00 |
|
Christoffer Lerno
|
ab93389031
|
- Updated posix/win32 stdlib namespacing
- Process stdlib
- Fix to void expression blocks
|
2023-06-21 16:27:53 +02:00 |
|
Christoffer Lerno
|
4d552ae44d
|
Update $include syntax and behaviour. Remove top level $if completely.
|
2023-06-21 16:27:53 +02:00 |
|
Christoffer Lerno
|
f9548cb213
|
Fix nested hash resolution for access identifiers. Fixes #789
|
2023-06-20 17:05:13 +02:00 |
|
Christoffer Lerno
|
57424d8b6b
|
Fixes #786, constant initialization with constants sometimes causing an error lowering to LLVM. Fixes bug passing void as a vararg argument to an any vararg.
|
2023-06-19 10:38:37 +02:00 |
|
Christoffer Lerno
|
76d75ac375
|
Fix passing temporary objects by reference for methods.
|
2023-06-13 12:22:35 +02:00 |
|
Christoffer Lerno
|
4c1edfb941
|
Dev (#777)
* The new @if directive.
|
2023-06-10 23:16:28 +02:00 |
|
Christoffer Lerno
|
b794c893d6
|
Dynamic dispatch.
|
2023-05-25 22:28:45 +02:00 |
|
Christoffer Lerno
|
ddd0497922
|
Better lowering of distinct types. Noreturn function call expr recognized as a "jump" for escape analysis. Preferring "def" in libs. To upper / to lower for ascii. Initial dynlib support.
|
2023-05-21 21:41:01 +02:00 |
|
Christoffer Lerno
|
353a072b75
|
Fix for getting the correct generic type of consts. Fix of late initialization of structs using compound literals.
|
2023-05-14 17:23:45 +02:00 |
|
Christoffer Lerno
|
6210522c75
|
Update error message, disable 17 from CI
|
2023-05-08 18:48:40 +02:00 |
|
Christoffer Lerno
|
8059dc1539
|
delete_if, retain_if, rindex_of, compact, compact_count added to List.
|
2023-04-21 14:45:25 +02:00 |
|
Christoffer Lerno
|
809321e20c
|
Updated grammar. Removal of elif. Removal of ':' ';' in some ct statements. Empty faults is now an error. Remove "define" for types. Remove "private". Better errors on incorrect bitstruct syntax. Introduction of wildcard type rather than optional wildcard. Removal of scaled vector type. mkdir and rmdir. Disallow define @Foo() = { @inline }. Add handling for @optreturn and change it to @return!. Restrict interface style functions. Updated x64 ABI. stdlib updates to string. Removed deprecated functions. Update how variadics are implemented. Extended error messages. x86 ABI fixes. Shift check fixes. '!' and '?' are flipped. No trailing ',' allowed in functions. Fix to string parsing. Allow l suffix. Simplifying flatpath. any replaces variant, anyfault replaces anyerr. Allow getting the underlying type of anyfault. De-duplicate string constants. Fix of readme. Extended list. Fix of "(MyEnum)x + 1". Clock and DateTime types. Fixes to array concat.
|
2023-04-21 10:56:39 +02:00 |
|
Christoffer Lerno
|
0f80d985fa
|
Fix sema errors on flexible array slices.
|
2023-03-22 12:56:15 +01:00 |
|
Christoffer Lerno
|
316af36723
|
Add dstringwriter.
|
2023-03-22 12:23:47 +01:00 |
|
Christoffer Lerno
|
24147a85f7
|
Allow unary plus.
|
2023-03-19 22:46:28 +01:00 |
|
Christoffer Lerno
|
954521228e
|
Make casts explicit when casting to pointer offset. Better localization of error when narrowing fails. New printf formatting based on musl plus %a output.
|
2023-03-19 21:15:44 +01:00 |
|
Christoffer Lerno
|
8b0df0ee11
|
try? / catch?
|
2023-03-17 22:49:48 +01:00 |
|
Christoffer Lerno
|
e2b9a35dfe
|
Add tentative ".ordinal" on faults. Allow anyerr and fault to be initialized with null.
|
2023-03-15 14:32:00 +01:00 |
|
Christoffer Lerno
|
3cb94a2857
|
Temporarily disable LLVM 17. Generic module contracts enabled.
|
2023-03-14 23:25:52 +01:00 |
|
Christoffer Lerno
|
1b27264f07
|
Allow type inference on enum comparisons. Add chdir. Fix bug when command was missing. Allow {} on basic types.
|
2023-03-13 16:25:03 +01:00 |
|
Christoffer Lerno
|
4ffeada3c7
|
Updated stdlib. Prefer file::open. Fix to slice assign with distinct types.
|
2023-03-12 00:33:16 +01:00 |
|
Christoffer Lerno
|
b94c647ead
|
Distinct String
|
2023-03-08 14:32:07 +01:00 |
|
Christoffer Lerno
|
9b81623680
|
Make string literals default to char[]
|
2023-03-08 11:24:11 +01:00 |
|
Christoffer Lerno
|
89de0a70d2
|
"@ensure" now correctly only runs on non-optional results. Subtypes now merge to a single type. Beginning deprecation of "std::core::str". Refreshed String functions. Consistent use of ".using" parameter. Functions moved to string methods. Tests on more string methods. Fixes to split, rindex_of.
|
2023-03-08 00:13:48 +01:00 |
|
Christoffer Lerno
|
33cc2d889b
|
More const modification detection. Grab the version number into CMake.
|
2023-03-07 14:35:12 +01:00 |
|
Christoffer Lerno
|
1035de3b36
|
Remove all locations when enums are implicitly lowered to integers. Remove the menagerie of flattening functions. Incidentally this also fixes a bunch of not-yet tested errors with distinct types.
|
2023-03-04 22:14:29 +01:00 |
|
Christoffer Lerno
|
f9923de7f9
|
Remove implicit cast from enum to int. Allow enums to use distinct types as the backing type. enum += 1 returns enum type.
|
2023-03-04 01:03:57 +01:00 |
|
Christoffer Lerno
|
488472ecbb
|
Improve enum add/sub.
|
2023-03-03 17:43:13 +01:00 |
|
Christoffer Lerno
|
ea3b32f68b
|
Further casting cleanup.
|
2023-03-03 14:43:32 +01:00 |
|
Christoffer Lerno
|
a2911292d8
|
Simplify narrowing semantics.
|
2023-03-02 22:04:15 +01:00 |
|
Christoffer Lerno
|
3449d2ea88
|
Remove all array pointer decay.
|
2023-03-02 19:47:24 +01:00 |
|
Christoffer Lerno
|
0314f9534f
|
Improve enum checks on enum conversions.
|
2023-03-01 13:56:36 +01:00 |
|
Christoffer Lerno
|
f8208f946b
|
Remove "generic" code paths.
|
2023-03-01 12:01:43 +01:00 |
|
Christoffer Lerno
|
cc19168c7b
|
Some general cleanup.
|
2023-02-28 01:15:30 +01:00 |
|
Christoffer Lerno
|
1c83a484da
|
Print warnings on deprecated.
|
2023-02-27 18:59:25 +01:00 |
|
Christoffer Lerno
|
dd4edfb747
|
Updated malloc/calloc/realloc/free deprecation of old helper functions. Add checks to prevent incorrect alignment on types when using malloc. Better errors from $assert. Added @deprecated. Fixed issue using named arguments after varargs.
|
2023-02-27 15:03:27 +01:00 |
|
Christoffer Lerno
|
2a6339a25e
|
Updated native variants of file handling. Fixed $if folding chain.
|
2023-02-23 18:00:34 +01:00 |
|
Christoffer Lerno
|
8f5676b488
|
Add defer catch/try. Fix missing defer invoked on return a > 0 ? Foo.ABC! : 1
|
2023-02-21 20:10:03 +01:00 |
|
Christoffer Lerno
|
e3416a1c40
|
Allow @test with modules. Change name mangling for non exports.
|
2023-02-20 16:02:30 +01:00 |
|
Christoffer Lerno
|
6e8c69cd52
|
Add & ^ | to bitstructs.
|
2023-02-18 16:21:30 +01:00 |
|
Christoffer Lerno
|
9061699adf
|
Fix of $vasplat when used multiple times.
|
2023-02-17 20:31:17 +01:00 |
|
Christoffer Lerno
|
c26655a05a
|
Remove usize/isize completely.
|
2023-02-16 00:48:37 +01:00 |
|
Christoffer Lerno
|
adc424ba1d
|
Fixed missing check on &var.myFunction
|
2023-02-14 23:44:05 +01:00 |
|
Christoffer Lerno
|
b85d521dc1
|
Fixed missing check on &var.myFunction
|
2023-02-14 21:56:56 +01:00 |
|
Christoffer Lerno
|
03cd56e46b
|
Add @local and fix visibility issues for generic methods.
|
2023-02-14 12:17:56 +01:00 |
|
Christoffer Lerno
|
8184fba34b
|
Delay type evaluation further. Current analysis shows that this code should be safe, but there may be some issues lurking.
|
2023-02-14 09:27:03 +01:00 |
|
Christoffer Lerno
|
3b49b87784
|
Fix for nolibc (eg wasm). Add multi global declarations. Simplicity wasm export / import. Prevent "extern" functions to have a function body.
|
2023-02-11 11:16:31 +01:00 |
|
Christoffer Lerno
|
f313e90e28
|
Some work on headers. Fix unsigned negation on consts.
|
2023-02-09 09:15:51 +01:00 |
|
Christoffer Lerno
|
6cef75b608
|
Removes win x86 target. Add win aarch64. Fixes to jump buffer sizes. Fix returning bool[2] in the SysV ABI. Array comparison now works. Prevent flexible array comparisons. Prevent zero size unions.
|
2023-02-06 18:09:31 +01:00 |
|