Christoffer Lerno
|
fb56d380cc
|
Builtins work. Math library exposes some builtins. Volatile store / load.
|
2021-11-13 12:31:45 +01:00 |
|
Christoffer Lerno
|
aa239c6a87
|
Allow "fn" instead of "func". Rewrote $switch over types.
|
2021-10-20 16:30:45 +02:00 |
|
Christoffer Lerno
|
b4df56db54
|
Removed original_type, pure, removed bigint, added i128 type, lots of fixes to $Foo, reassigning ct type, catch/macro, "!", removed type inference.
|
2021-10-19 10:39:02 +02:00 |
|
Christoffer Lerno
|
0a4f35154a
|
Addeded some hash functions. Fix of visibility resolution for macros. std lib is now loaded from a directory.
|
2021-09-22 10:27:10 +02:00 |
|
Christoffer Lerno
|
fb9be722bc
|
Fix issue with default macro arguments. Test of ?? instead of else. Added libc
|
2021-09-20 22:25:01 +02:00 |
|
Christoffer Lerno
|
e4c7dde30b
|
Fix of shadowing bug. Allow pointer and subarrays to be constant initialized. Compile time values may now pass around anything considered compile time constant. It's possible to index into an initializer list at compile time. (Some work still remains on this)
|
2021-09-18 01:13:42 +02:00 |
|
Christoffer Lerno
|
49d13c23bb
|
Fix issue with grouped expressions in macros. Adding spectral norml code example.
|
2021-09-10 15:47:31 +02:00 |
|
Christoffer Lerno
|
bb9e84d329
|
Make errors usable from other units. Order subarray elements correctly. Correct subarray -> pointer cast. Prevent unwrapping of catch in switch.
|
2021-08-31 18:12:30 +02:00 |
|
Christoffer Lerno
|
2ff5acc2a1
|
Allow constant strings as default values.
|
2021-08-31 13:03:12 +02:00 |
|
Christoffer Lerno
|
f180a0d44a
|
Change anyerror { i64, i64 } -> i64. Cleaned up platform data and max tls / vector align. Initial work on bitstruct (just parsing). Updated try / catch semantics.
|
2021-08-18 17:31:09 +02:00 |
|
Christoffer Lerno
|
afeb555e2f
|
Improved support for vectors that allows correct usage in C ABI.
To free keywords, half -> float16, i128 -> int128, u128 -> uint128, quad -> float128.
|
2021-08-10 22:45:53 +02:00 |
|
Christoffer Lerno
|
9f42ddb68d
|
Fix foreach body copy. Moved deref / addr into special functions. Cleaned up access. Remove .sizeof .alignof .qnameof .nameof, create $qnameof $nameof
|
2021-07-26 09:30:35 +02:00 |
|
Christoffer Lerno
|
f64c35214e
|
Change error -> anyerr / errtype
|
2021-07-18 14:11:39 +02:00 |
|
Christoffer Lerno
|
46a4f8a7ae
|
Added constants describing floating point types.
|
2021-07-16 17:48:31 +02:00 |
|
Christoffer Lerno
|
d93382d858
|
Add CChar to interop.
|
2021-07-15 01:32:05 +02:00 |
|
Christoffer Lerno
|
0111fe936e
|
Adds missing alignment to sret.
|
2021-07-14 11:53:09 +02:00 |
|
Christoffer Lerno
|
12ffeeaad7
|
Fixes to the cname patch.
|
2021-06-30 22:41:34 +02:00 |
|
Christoffer Lerno
|
9572c4afc9
|
Top level $if now uses $if: / $endif; Fix of boolean globals. Fix of $else: clause. Fix of $assert inside of $if
|
2021-06-24 18:01:59 +02:00 |
|
Christoffer Lerno
|
5a6cdd25ef
|
Introduced ${...} syntax for constants. Fixed issue where constants were not correctly handled for macros. /* */ comments are nesting. Added LINE, FUNC, FILE defines. Corrected shallow resolution of subarrays. Added int defines. Removed Vararray.
|
2021-06-24 00:59:25 +02:00 |
|
Christoffer Lerno
|
dd8b850544
|
Support for "static" keyword.
|
2021-05-30 16:30:16 +02:00 |
|
Christoffer Lerno
|
d9566ef894
|
Generic modules are back, slightly different.
|
2021-05-30 16:30:16 +02:00 |
|
Christoffer Lerno
|
97ac957cb7
|
"Public by default"
|
2021-05-30 16:30:16 +02:00 |
|
Christoffer Lerno
|
892c7e8874
|
Changed generic modules to internal templates.
|
2021-05-27 08:30:02 +02:00 |
|
Christoffer Lerno
|
1f676c135c
|
Removed func and rewrote typedefs.
|
2021-05-23 13:16:48 +02:00 |
|
data-man
|
d663af1e1a
|
Fix casts in math module
|
2021-05-18 19:00:51 +02:00 |
|
Christoffer Lerno
|
fc31c15914
|
Updated cast syntax in code samples.
|
2021-05-18 17:23:27 +02:00 |
|
data-man
|
7ee015c84f
|
Fix casts in math module
|
2021-05-17 22:25:03 +02:00 |
|
Christoffer Lerno
|
3c4233f4d4
|
Fixes to failable return from expression and macro blocks. Allow division by float zero. Correct type promotion from compile time float.
|
2021-05-17 21:17:46 +02:00 |
|
Christoffer Lerno
|
0e076234ca
|
Set stdlib library for testing and profit. Fix bugs when using void* to step. Make constants private linkage. Compare pointers using unsigned comparison without conversion. Use manual ptrdiff code. Fix issue returning "void!". Unify pointers when doing Foo* - void*. Allow comparing for example void* < Foo*
|
2021-04-29 03:12:25 +02:00 |
|
Christoffer Lerno
|
26d25e3f74
|
Recursive references between globals are now correctly handled.
|
2021-01-27 00:14:16 +01:00 |
|
Christoffer Lerno
|
3a24fbfa6d
|
Moved examples around. Updated (and corrected) const initialization. Removed "in" keyword. Added "member" attribute domain. Many fixes in struct padding and alignment and tests. Fixed extern global.
|
2021-01-24 00:55:09 +01:00 |
|
Christoffer Lerno
|
564c93700e
|
Fixed bug that would intermittently arise from multiple contexts having the same pointer (should preferably be fixed in a different way later). Free all the arenas before codegen. Change "next" to "nextcase". Allow missing function parameters. Add "inline" structs.
|
2021-01-03 00:15:51 +01:00 |
|
Christoffer Lerno
|
6a5a0f2b94
|
Moved ABI lowering from codegen to semantic analysis. Fixes for failables in the ABI and the codegen.
|
2020-12-04 19:19:57 +01:00 |
|
Christoffer Lerno
|
21357c4fc1
|
Fix crash when having return value errors. Updated docs. Find and load builtin.c3 locate std lib.
|
2020-07-31 16:29:52 +02:00 |
|