Christoffer Lerno
|
4afec24434
|
More advanced introspection.
|
2022-07-20 12:22:03 +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
|
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
|
28a8e17690
|
Vararg abi fix. Version bumped to 0.2.14
|
2022-07-13 14:19:09 +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
|
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
|
bb28f6e61c
|
Fix stack setting after error return. Some fixes to examples.
|
2022-07-02 10:54:40 +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
|
b0c55ff777
|
Support enum associated values.
|
2022-05-11 20:55:09 +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
|
29a9769651
|
Ordinal based enums.
|
2022-05-08 21:39:00 +02:00 |
|
Christoffer Lerno
|
22ee082d00
|
0.2.1 SysV ABI fix for passing certain things by struct. Fix implicitly converting to float in the case of myfloat *= -1. Prefer inferred constant over global. Allow locals to shadow global variables.
|
2022-04-27 16:43:25 +02:00 |
|
Christoffer Lerno
|
890c4bc435
|
0.2.0. Build system improvements. Target changes x64-windows -> windows-x64, x64-darwin -> macos-x64. Improved mac support. LLD linking for Mac, Windows, Linux. Cross linking for Mac, Windows. Clean up string use. Fix of debug handling of multiple compilation units per module. MSVC CI
|
2022-04-26 13:20:33 +02:00 |
|
Dmitry Atamanov
|
151cbfd706
|
Semi-implemented foreach for vectors (#423)
Implement foreach for vectors
|
2022-04-09 20:09:35 +02:00 |
|
Christoffer Lerno
|
b99db4be24
|
Allocators. Rename of "optenum" to fault. Memcpy and memset added. Cleanup of declaration use.
|
2022-04-09 20:07:59 +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
|
b31629c5e8
|
Removal of "or_else jump". Fixes to defer & macros/blocks, optimized failable return. @noscope macros removed. Disallow meaningless defer.
Correctly show error on return or rethrow inside of a defer. Fix copying an access expression. Removing scoped expr.
|
2022-03-26 20:16:36 +01:00 |
|
Christoffer Lerno
|
8b8a8d81db
|
Fix of issue with "a ?? false"
|
2022-03-21 13:22:59 +01:00 |
|
Christoffer Lerno
|
05d8e6c7b8
|
Fix debug panic for vector shift and division.
|
2022-03-20 19:39:31 +01:00 |
|
Christoffer Lerno
|
6789fab93c
|
Panic function that may be redefined. Trap and stacktrace builtins. Bug using builtin fixed. Fixes to using $$LINE and friends. Produces a stacktrace on error.
|
2022-03-18 12:43:17 +01:00 |
|
Christoffer Lerno
|
e02362de0c
|
Resolve contracts as they are encountered.
|
2022-03-11 11:17:39 +01:00 |
|
Christoffer Lerno
|
c414459075
|
Fix bug with missing debug location.
|
2022-03-10 15:55:44 +01:00 |
|
Christoffer Lerno
|
8f6fb8b7d7
|
Move body param as decl. Fix lexer bug with docs.
|
2022-03-10 14:54:52 +01:00 |
|
Christoffer Lerno
|
0565e87e5e
|
Support '@pure' and parse the optreturn tag.
|
2022-03-10 09:46:30 +01:00 |
|
Christoffer Lerno
|
6a48f81485
|
Smaller Decl and Expr. Compressed TypeInfo.
|
2022-03-09 19:10:11 +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
|
f54a93890a
|
Remove the EXPR_CONST_IDENTIFIER
|
2022-02-18 13:56:13 +01:00 |
|
Christoffer Lerno
|
bf5683b41c
|
General cleanup, more native platform detection.
|
2022-02-18 09:54:12 +01:00 |
|
Christoffer Lerno
|
d42193dbd6
|
Fixes the alloca alignment on x64 for alignment > 16. Improved indexing into ConstInitializer adding const indexing into a const array during compile time. Add a temporary enum values result.
|
2022-02-08 11:41:34 +01:00 |
|
Christoffer Lerno
|
ee32a5fd47
|
Added $stringify. Remove of editor_plugin folder.
|
2022-02-02 15:22:28 +01:00 |
|
Christoffer Lerno
|
e5bcb74822
|
Added levenshtein.c3 to working files. Fixes to reverse indexing. Added min/max functions. Tentatively removed "opaque"
|
2022-01-26 17:40:01 +01:00 |
|
Christoffer Lerno
|
b2be8349ed
|
Add typeless varargs.
|
2022-01-23 19:43:57 +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
|
05f0059b1b
|
Fix float conversion. Strings as array initializers work much better.
|
2022-01-17 16:06:17 +01:00 |
|
Christoffer Lerno
|
bc3b58b3e3
|
Optimized ternary where both branches are empty.
|
2022-01-17 12:01:27 +01:00 |
|
Christoffer Lerno
|
99ea0afcbf
|
Optimize multiple int casts on ptrtoint, into a single cast. Fixed incorrect widening cast from signed -> unsigned.
|
2022-01-17 00:45:26 +01:00 |
|
Christoffer Lerno
|
23461b179f
|
More splitting of the AbiArgInfo to make it easier to find duplicate behaviour.
|
2022-01-16 16:21:55 +01:00 |
|
Christoffer Lerno
|
d916f111b3
|
Fixes a | b when a | b are boolean. Fixes to RISCV and x64 ABI implementations.
|
2022-01-16 01:13:43 +01:00 |
|
Christoffer Lerno
|
c5a862f4d1
|
Fix to the x64 ABI. More tests.
|
2022-01-14 21:30:29 +01:00 |
|
Christoffer Lerno
|
fb22a36aa9
|
Fix of #374. Even more "or" LLVM 14 fixes.
|
2022-01-13 21:51:19 +01:00 |
|
Christoffer Lerno
|
889bc27800
|
Skip "or with zero"
|
2022-01-13 21:38:24 +01:00 |
|
Christoffer Lerno
|
eed5b7db54
|
Correctly call x64 varargs.
|
2022-01-13 21:22:50 +01:00 |
|
Christoffer Lerno
|
ea3b50d039
|
Codegen with better annotations on globals.
|
2022-01-10 13:58:15 +01:00 |
|
Christoffer Lerno
|
041c096801
|
Refactored some of the llvm lowering. Work on TB. Disabled mimalloc due to issues with LLVM.
|
2022-01-09 21:23:37 +01:00 |
|
Christoffer Lerno
|
a176ae353b
|
Refactored function pointer.
|
2022-01-07 19:13:07 +01:00 |
|