Christoffer Lerno
|
4d0f73a8f5
|
Consistent naming in allocators. Fix where cast from char array -> bitstruct would not work.
|
2023-05-10 10:30:37 +02:00 |
|
Christoffer Lerno
|
db8c46d6c5
|
Addition of "distinct" and "inline" as keywords. Removal of "alias" keyword.
|
2023-05-04 08:48:17 +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
|
ad7ee06635
|
Grammar updates. Updated enum member parsing.
|
2023-03-22 21:46:47 +01:00 |
|
Christoffer Lerno
|
1c4ab48da7
|
Update for mingw
|
2023-03-21 14:06:11 +01:00 |
|
Christoffer Lerno
|
0a826d588f
|
Update
|
2023-03-21 00:59:41 +01:00 |
|
Christoffer Lerno
|
93fa135d28
|
Deprecation of define Type = ...
|
2023-03-20 22:56:06 +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
|
9b81623680
|
Make string literals default to char[]
|
2023-03-08 11:24:11 +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
|
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
|
07e4aab48b
|
Fix of bool -> float vector cast. Correctly widen C style varargs for distinct types and optionals.
|
2023-03-02 11:35:05 +01:00 |
|
Christoffer Lerno
|
0dcad6f5cf
|
Improve and simplify casts.
|
2023-03-01 22:43:50 +01:00 |
|
Christoffer Lerno
|
f8208f946b
|
Remove "generic" code paths.
|
2023-03-01 12:01:43 +01:00 |
|
Christoffer Lerno
|
9db845903e
|
Cleanup and allow complex array length inference, e.g. "int[*][2][*] a = ..."
|
2023-02-28 17:37:17 +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
|
bd8bff85d6
|
Add tracking allocator. Fix substruct issue.
|
2023-02-27 17:05:27 +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
|
feaf8b3b2c
|
Update HashMap functionality. Fix check when appending to VarString. Fix issue with decls accidentally invalidated during $checked eval. Fold optional when casting slice to pointer.
|
2023-02-27 00:10:01 +01:00 |
|
Christoffer Lerno
|
10272dbf38
|
Delay C abi lowering until requested on-demand to prevent circular dependencies.
|
2023-02-24 22:01:55 +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
|
62fbf4da47
|
Add simple bitstruct.
|
2023-02-18 16:59:52 +01:00 |
|
Christoffer Lerno
|
6e8c69cd52
|
Add & ^ | to bitstructs.
|
2023-02-18 16:21:30 +01:00 |
|
Christoffer Lerno
|
a0a5c940f1
|
Add --strip-unused.
|
2023-02-16 22:11:42 +01:00 |
|
Christoffer Lerno
|
0aa776d61b
|
Allow @export on modules, to implicitly @export all in the module section. Add expect on error comparisons, expecting them to be false by default. Support @extern on modules.
|
2023-02-16 13:05:09 +01:00 |
|
Christoffer Lerno
|
c26655a05a
|
Remove usize/isize completely.
|
2023-02-16 00:48:37 +01:00 |
|
Christoffer Lerno
|
818396b6f3
|
Updated module visibility import visibility. Fixes to @local
|
2023-02-15 09:47:51 +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
|
5e457be605
|
Implement more @export / @private improvements. Make @private default… (#729)
|
2023-02-13 08:31:40 +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
|
1548cd06ef
|
Enable local multi-declarations. Fix of builtin argument checking. Migrate to @noinit.
|
2023-02-11 02:03:02 +01:00 |
|
Christoffer Lerno
|
0a0cc4b5df
|
Header printout complete. "@export" added but might get removed.
|
2023-02-09 23:16:18 +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 |
|
Christoffer Lerno
|
e0252a6d7a
|
Make it possible to use @deprecated in docs.
|
2023-02-05 22:13:50 +01:00 |
|
Christoffer Lerno
|
5a65a57e42
|
Catch macro infinite recursion. Fix of tan function.
|
2023-02-05 00:21:26 +01:00 |
|
Christoffer Lerno
|
4ea81fe636
|
More riscv tests. Fix missing zero/signext attributes on calls. Fixes and simplification to riscv ABI.
|
2023-01-31 14:09:32 +01:00 |
|
Christoffer Lerno
|
0afd55425a
|
More ABI cleanup and fixes to RISC-V ABI + tests for riscv32.
|
2023-01-30 23:46:06 +01:00 |
|
Christoffer Lerno
|
77608e137e
|
Updated winmain handling
|
2023-01-29 13:18:43 +01:00 |
|
Christoffer Lerno
|
5ea15eb708
|
Make Windows use wWinMain always. Support /SUBSYSTEM:WINDOWS
|
2023-01-29 01:32:35 +01:00 |
|
Christoffer Lerno
|
9a08c9d821
|
Fixes to wasm and function attributes.
|
2023-01-28 00:37:46 +01:00 |
|
Christoffer Lerno
|
a95710c93f
|
Add no-entry to project/command line. Add "link-args" to project. Add @wasm and @extern attributes. Added $$wasm_memory_size and $$wasm_memory_grow builtins.
|
2023-01-26 12:02:09 +01:00 |
|
Christoffer Lerno
|
b508a43f8f
|
Add lambdas.
|
2023-01-24 10:15:23 +01:00 |
|