Christoffer Lerno
d95e0b4733
General refactoring and fix of compile time folding of pointers.
2022-08-17 21:54:47 +02:00
Christoffer Lerno
fd642e333b
Fix tests.
2022-08-17 17:32:28 +02:00
Christoffer Lerno
377f3eeb2e
Allow const access into arrays and structs.
2022-08-17 17:04:27 +02:00
Dmitry Atamanov
15586b3076
Add foreach_r tests
2022-08-16 16:51:06 +02:00
Christoffer Lerno
9a69a13b04
Fixes to or/and with rethrow.
2022-08-15 14:34:18 +02:00
Christoffer Lerno
63d9853bd3
Fixes to bitstruct.
2022-08-14 18:25:47 +02:00
Christoffer Lerno
fc943a98ef
Foreach_r, bump to 0.3.15
2022-08-13 03:04:09 +02:00
Christoffer Lerno
44df6eb75b
Cleanup.
2022-08-12 18:13:24 +02:00
Christoffer Lerno
5cacc41925
Add global builder / updated codegen.
2022-08-12 01:50:48 +02:00
Christoffer Lerno
571728a42e
Bump version to 0.3.14. Better non-lvalue errors. Dereferenced optional pointers are not lvalues.
2022-08-12 00:33:09 +02:00
Christoffer Lerno
852c08e5fe
Better handling of foreach lowering.
2022-08-11 21:25:11 +02:00
Christoffer Lerno
f513b6237f
Improved error messages for foo(void), foo(int!) declarations.
2022-08-11 12:59:55 +02:00
Christoffer Lerno
af9b99bd5a
Fix macro calls to make CT parameters modifiable.
2022-08-11 11:04:44 +02:00
Christoffer Lerno
92b4eeaa35
Update codegen for failable folding. Fixes chained init, e.g. "int! a = b = TestErr.FOO!"
2022-08-10 21:32:29 +02:00
Christoffer Lerno
5ac35a49fd
Minor cleanup. Fix of do { } while(1) loops. Bump to 0.3.9
2022-08-10 16:37:27 +02:00
Christoffer Lerno
cfcf5cbc16
Bump to 0.3.7. Fixes issue with bitoperations on booleans.
2022-08-10 11:01:14 +02:00
Christoffer Lerno
ebd7611164
Allow compile time pointer manipulation. Ternary bug fixes.
2022-08-09 12:05:49 +02:00
Christoffer Lerno
878bbed929
Fix bug using $switch. Added mem::equals. Fix to dynamic arena allocator.
2022-08-05 19:00:32 +02:00
Christoffer Lerno
6d2ab0c985
Fix ordering of @builtin. malloc <-> alloc, malloc, calloc, realloc, free builtins.
2022-08-04 01:49:36 +02:00
Christoffer Lerno
cc8884d3d1
Allocators separated into aligned and non aligned operations.
2022-08-03 20:53:37 +02:00
Christoffer Lerno
331f9b23f8
Attributes correctly checks for recursive definitions now. Added a max bitstruct size.
2022-07-30 02:55:32 +02:00
Christoffer Lerno
9886d381c0
Update allocator and resolution.
2022-07-30 02:55:32 +02:00
Christoffer Lerno
12c17b62cf
Allow any expression as default expression.
2022-07-30 02:55:32 +02:00
Christoffer Lerno
6f5f5feb97
Fixing distinct, typedef and bitstruct copying. Fix where global constants did not need to be constant. Bump to 0.2.26
2022-07-27 18:12:27 +02:00
Christoffer Lerno
c02ce5ce2a
Better error on all upper parameter names. "Upper case" -> "uppercase"
2022-07-26 22:01:23 +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
cc1bc58ed0
Allow using enums for indexing.
2022-07-24 15:39:11 +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
62c1d2ddb5
Slicing a distinct type now returns the distinct type.
2022-07-23 20:46:21 +02:00
Christoffer Lerno
b313bec69d
Fix to "typeid.kind". Conversion unsigned int -> enum fixed. @autoimport -> @builtin. Comparison macros. Bump to 0.2.21
2022-07-22 17:09:49 +02:00
Christoffer Lerno
56a6e0b112
Fix bug preventing implicit & on optionals. Updated priority queue to return optionals. Changed the list API to have snake case on methods. Bump to 0.2.20
2022-07-21 22:21:50 +02:00
Christoffer Lerno
18f7f35e80
More tests.
2022-07-21 21:20:03 +02:00
Christoffer Lerno
1d572f3e7c
Allow distinct printthrough in printf. Added tests.
2022-07-21 18:13:11 +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
8afbccd3fe
Fix bug in extension methods for generic types and typedefs.
2022-07-20 13:24:55 +02:00
Christoffer Lerno
d3a053e049
Updated mangling and bump to 0.2.18
2022-07-20 12:22:03 +02:00
Christoffer Lerno
29edd6e54e
Fix to extension methods in other modules. Version 0.2.17
2022-07-19 14:17:00 +02:00
Christoffer Lerno
547d30eb1e
Disallow complist as a regular macro parameter.
2022-07-18 01:22:29 +02:00
Christoffer Lerno
6cf3c9f46b
Fix in nested block handling. @maydiscard and @nodiscard annotations. If the common type of int[x] and int[y] is int[]
2022-07-17 19:48:24 +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
48a31cfa48
Fix of error where {| |} with value return could have no final return.
2022-07-17 19:48:24 +02:00
Christoffer Lerno
3f6b0646b3
An initial printf. Added type.inner and type.len. Bump to 0.2.15
2022-07-14 02:43:53 +02:00
Christoffer Lerno
92542ac1f9
Fix bug with bit struct initialization and zeros. Allow float mod. Add float.max/min. Version bumped to 0.2.13
2022-07-13 00:13:34 +02:00
Christoffer Lerno
abfccb5576
Fix issues with union of const. Bump version 0.2.12
2022-07-11 17:58:11 +02:00
Christoffer Lerno
ea5d7cd2e7
Fixes initialization of anonymous structs. Bump version 0.2.11
2022-07-10 23:29:05 +02:00
Christoffer Lerno
9fdd66af42
Fix of distinct void* and null. Version bumped to 0.2.10
2022-07-08 17:16:44 +02:00
Christoffer Lerno
c8a614e43f
LLVM 15 compatibility fixes ( #465 )
...
More variant code. Fixes to typekind. Fixes to macro with failable returns. Remove use of LLVMConstInsert etc. Version 0.2.8
2022-07-06 16:41:52 +02:00
Christoffer Lerno
b1d83e2ccd
Auto-import std::core. Fix module assignment of declarations. Introspection improvements. Deref null error panics in safe mode. Support for LLVM 15
2022-06-29 21:57:35 +02:00
Christoffer Lerno
df41caabdd
Global @align fixed #446 .
2022-06-04 23:19:27 +02:00
Christoffer Lerno
224390ce5a
Make builtins loaded by default.
2022-06-04 01:41:23 +02:00