Christoffer Lerno
03cd56e46b
Add @local and fix visibility issues for generic methods.
2023-02-14 12:17:56 +01:00
Christoffer Lerno
5e457be605
Implement more @export / @private improvements. Make @private default… ( #729 )
2023-02-13 08:31:40 +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
b508a43f8f
Add lambdas.
2023-01-24 10:15:23 +01:00
Christoffer Lerno
f122d290f1
Add macos sdk / min version to pass to the linker.
2022-12-29 01:06:35 +01:00
Christoffer Lerno
f622b3bd4c
Cleanup of naming change to optional. Fix of builtin optional handling.
2022-12-27 23:55:23 +01:00
Christoffer Lerno
eaaa5362a5
Output messages at compile time.
2022-12-07 18:48:55 +01:00
Christoffer Lerno
963b8f28ef
Fix of multiple returns in macros retaining ct values. Correctly require ; after endfor etc.
2022-12-06 20:09:40 +01:00
Christoffer Lerno
160659c4e3
Optimize sret / byval. Fixes to types and failables.
2022-10-15 02:45:19 +02:00
Christoffer Lerno
379f9e60bf
More checks for $switch
2022-09-25 17:17:56 +02:00
Christoffer Lerno
4d5821408d
Add @castable and @convertible builtin macros, removes the need $castable and $convertible
2022-09-20 22:18:00 +02:00
Christoffer Lerno
be5c82cfa6
Add "$checks". Fix where $y++ could appear inside a runtime scope.
2022-09-20 18:32:36 +02:00
Christoffer Lerno
81a2474f75
Add methods to basic types. Remove "intvec" and "floatvec" overloads. Update bits and math to use the new functionality. Introduces [<*>] and [<>] types. Bump version to 0.3.47
2022-09-17 22:00:28 +02:00
Christoffer Lerno
755d6f93b7
Extends = to work with macros and allows => alternative. Disallow statements.
2022-09-14 23:30:39 +02:00
Jean-Baptiste Perrier
7c2555bd3b
Remove comments
2022-09-14 23:16:23 +02:00
Jean-Baptiste Perrier
469ec54282
Add single function declaration
2022-09-14 23:16:23 +02:00
Christoffer Lerno
fa51402a16
Added x64 instructions.
2022-09-13 22:40:49 +02:00
Christoffer Lerno
03c627f646
Fix asm string bug.
2022-09-13 19:15:17 +02:00
Christoffer Lerno
a0a2e27127
$vasplat() implemented. $vacount removed (). Improved dynscope implementation. Version bump to 0.3.37.
2022-09-09 12:19:47 +02:00
Christoffer Lerno
8eefce235f
Rename $vaarg functions. Bump version to 0.3.35.
2022-09-07 12:32:43 +02:00
Christoffer Lerno
1a9a71f4c4
Inline asm first checkin.
2022-09-05 13:29:03 +02:00
Christoffer Lerno
757ca3716e
Remove unused tokens.
2022-08-30 16:25:50 +02:00
Christoffer Lerno
6b1370ba76
Support varargs for macros. Bugfix member access. Support macro varargs.
2022-08-27 02:25:08 +02:00
Christoffer Lerno
57e1084734
Improvements to parameter parsing. Update "splat" name. Allow more orderings of named parameters. Allow named args after variant.
2022-08-24 20:06:08 +02:00
Christoffer Lerno
d95e0b4733
General refactoring and fix of compile time folding of pointers.
2022-08-17 21:54:47 +02:00
Christoffer Lerno
fc943a98ef
Foreach_r, bump to 0.3.15
2022-08-13 03:04:09 +02:00
Christoffer Lerno
f513b6237f
Improved error messages for foo(void), foo(int!) declarations.
2022-08-11 12:59:55 +02:00
Christoffer Lerno
cdff5c3e26
Dev ( #500 )
...
Single code path for kind/inner/len/sizeof on type and typeid. Fix of #493 . Bump to 0.2.24. Remove ´func´ deprecated keyword. Unify builtin access. Enum and fault name reflection.
2022-07-26 00:56:59 +02:00
Christoffer Lerno
812bd8b3d0
Added $converable / $castable. Simplify and corrected if try/catch parsing. Fix bug with { [A] = 1 }
2022-07-24 15:10:04 +02:00
Christoffer Lerno
7e0a29ef40
Fix constant typeid comparisons. Allow methods to use & and * and constants. Improved error messages. Updated String type with generic append.
2022-07-24 15:10:04 +02:00
Christoffer Lerno
c1de3f059e
Updated error messages.
2022-07-23 21:08:17 +02:00
Christoffer Lerno
002ee006c1
More efficient int[] a = {}; Disallow zero length arrays. Bump to 0.2.19 ( #489 )
...
More efficient int[] a = {}; Disallow zero length arrays. Bump to 0.2.19. Improve error on mistyped types.
2022-07-20 22:25:03 +02:00
Christoffer Lerno
4beb7eff8f
Add support for : slices. Version bumped to 0.2.16
2022-07-17 19:48:24 +02:00
Christoffer Lerno
9691d50a6f
@ is now part of the name of an attribute or a macro. Macros without '@' must be function-like.
2022-05-08 22:16:33 +02:00
Christoffer Lerno
8743223dd6
Allocators. Rename of "optenum" to fault. Memcpy and memset added. Cleanup of declaration use.
2022-04-09 20:07:59 +02:00
Christoffer Lerno
e02362de0c
Resolve contracts as they are encountered.
2022-03-11 11:17:39 +01:00
Christoffer Lerno
322d714305
Dev ( #404 )
...
Remove 'errtype' name and reduce Expr / TypeInfo memory footprint.
2022-03-08 23:38:27 +01:00
Christoffer Lerno
069a2d40cb
Changing how defer works. Remove of undef. Simplify ensure.
2022-03-08 14:15:31 +01:00
Christoffer Lerno
9b0dfe8ba3
Cleanup: remove CT_ELIF ast node.
2022-03-04 17:08:47 +01:00
Christoffer Lerno
2802b2b96d
Ensure, $eval and $evaltype, @unreachable() replaces $unreachable. <Type>.sizeof
2022-03-04 15:49:17 +01:00
Christoffer Lerno
4f4bc80953
Symtab has a new hash map type. New, small, sourcespan, external symbols simplified. Updated docs.
2022-03-01 10:32:52 +01:00
Christoffer Lerno
bf5683b41c
General cleanup, more native platform detection.
2022-02-18 09:54:12 +01:00
Christoffer Lerno
ee32a5fd47
Added $stringify. Remove of editor_plugin folder.
2022-02-02 15:22:28 +01:00
Christoffer Lerno
8922399c36
Add $for
2022-01-24 22:52:01 +01:00
Christoffer Lerno
1e7ad2e241
Add $foreach
2022-01-24 18:53:44 +01:00
Christoffer Lerno
2c5ae858b8
Re-add () to ct constructs.
2022-01-24 00:52:43 +01:00
Christoffer Lerno
ef95c1a630
Fix $switch. And make top level $switch work.
2022-01-24 00:01:54 +01:00
Christoffer Lerno
ec291d4a9d
This allows testing optnum, optenum, errnum and resnum as alternatives to errtype.
2022-01-19 23:21:17 +01:00
Christoffer Lerno
e4e8abbc6c
Dev ( #376 )
...
Errno updates with errno for linux/win/macos. Updated $$ syntax to also match compiler constants.
2022-01-18 01:31:14 +01:00
Christoffer Lerno
8a840746f6
Compound statements are linked lists. Remove unused "global_symbols" "public_symbols" "qualified_symbols". Reduce max hash map load.
2022-01-05 19:40:44 +01:00