Christoffer Lerno
|
fc849c1440
|
0.6.0: init_new/init_temp removed. LinkedList API rewritten. List "pop" and "remove" function now return Optionals. RingBuffer API rewritten. Allocator interface changed. Deprecated Allocator, DString and mem functions removed. "identity" functions are now constants for Matrix and Complex numbers. @default implementations for interfaces removed. any* => any, same for interfaces. Emit local/private globals as "private" in LLVM, following C "static". Updated enum syntax. Add support [rgba] properties in vectors. Improved checks of aliased "void". Subarray -> slice. Fix of llvm codegen enum check. Improved alignment handling. Add --output-dir #1155. Removed List/Object append. GenericList renamed AnyList. Remove unused "unwrap". Fixes to cond. Optimize output in dead branches. Better checking of operator methods. Disallow any from implementing dynamic methods. Check for operator mismatch. Remove unnecessary bitfield. Remove numbering in --list* commands Old style enum declaration for params/type, but now the type is optional. Add note on #1086. Allow making distinct types out of "void", "typeid", "anyfault" and faults. Remove system linker build options. "Try" expressions must be simple expressions. Add optimized build to Mac tests. Register int. assert(false) only allowed in unused branches or in tests. Compile time failed asserts is a compile time error. Remove current_block_is_target. Bug when assigning an optional from an optional. Remove unused emit_zstring. Simplify phi code. Remove unnecessary unreachable blocks and remove unnecessary current_block NULL assignments. Proper handling of '.' and Win32 '//server' paths. Unify expression and macro blocks in the middle end. Add "no discard" to expression blocks with a return value. Detect "unsigned >= 0" as errors. Fix issue with distinct void as a member #1147. Improve callstack debug information #1184. Fix issue with absolute output-dir paths. Lambdas were not type checked thoroughly #1185. Fix compilation warning #1187. Request jump table using @jump for switches. Path normalization - fix possible null terminator out of bounds. Improved error messages on inlined macros.
|
2024-05-22 18:22:04 +02:00 |
|
Christoffer Lerno
|
ed9f15becf
|
Foreach uses non-wrapping add/dec.
|
2024-05-08 23:05:12 +02:00 |
|
Christoffer Lerno
|
deb4cc7c4b
|
0.5.3: Single-module not respected. Fix issue with compiler defined types. Fix optimization levels for projects. Use GEP i8 on offsets. Optimize foreach on len 1 arrays. Move panic blocks last. Fix generic module wildcard imports. Deprecate init_temp / init_new. Fix issue with macro vaarg and untyped lists. Fix extern const globals.
|
2024-01-14 15:34:54 +01:00 |
|
Christoffer Lerno
|
5e8816e6df
|
Fixes to native backtrace.
|
2023-11-13 17:20:46 +01:00 |
|
Christoffer Lerno
|
a9c28cce6d
|
Default protocols. Closes #1039
|
2023-10-10 23:30:33 +02:00 |
|
Christoffer Lerno
|
4c081f59ff
|
Refactoring, adding printf / printfn to all streams.
|
2023-09-03 10:14:04 +02:00 |
|
Christoffer Lerno
|
9a6d83f526
|
Updated stream API.
|
2023-09-03 01:14:15 +02:00 |
|
Christoffer Lerno
|
a23112fae6
|
Added parentof.
|
2023-08-29 11:51:09 +02:00 |
|
Christoffer Lerno
|
45d1b1d671
|
Fix where bitstructs in subarrays triggered the wrong lowering. Fixes #877
|
2023-07-23 20:50:53 +02:00 |
|
Christoffer Lerno
|
5a2fe4c9d9
|
Fix to macro codegen.
|
2023-07-19 01:34:50 +02:00 |
|
Christoffer Lerno
|
bbbcd9bf48
|
Updated name mangling for static vars in llvm.
|
2023-07-04 01:12:39 +02:00 |
|
Christoffer Lerno
|
b794c893d6
|
Dynamic dispatch.
|
2023-05-25 22:28:45 +02:00 |
|
Christoffer Lerno
|
6fc38bbcb9
|
Accidental change.
|
2023-04-28 23:36:45 +02:00 |
|
Christoffer Lerno
|
184cc19d36
|
Further grammar fixes.
|
2023-04-28 19:11:57 +02:00 |
|
Christoffer Lerno
|
9b81623680
|
Make string literals default to char[]
|
2023-03-08 11:24:11 +01:00 |
|
Christoffer Lerno
|
0dcad6f5cf
|
Improve and simplify casts.
|
2023-03-01 22:43:50 +01:00 |
|
Christoffer Lerno
|
2a6339a25e
|
Updated native variants of file handling. Fixed $if folding chain.
|
2023-02-23 18:00:34 +01:00 |
|
Christoffer Lerno
|
afa41f0c10
|
Updated name mangling.
|
2023-02-20 17:48:47 +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
|
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
|
0f7d21330a
|
Optimize optional return.
|
2023-02-04 19:48:42 +01:00 |
|
Christoffer Lerno
|
dce171670f
|
Use printn rather than println. Add string methods for copying.
|
2023-02-04 19:48:42 +01:00 |
|
Christoffer Lerno
|
539d733ceb
|
Remove LLVM 14 support. Simplify ABI lowering.
|
2023-01-30 12:39:04 +01:00 |
|
Christoffer Lerno
|
5ea15eb708
|
Make Windows use wWinMain always. Support /SUBSYSTEM:WINDOWS
|
2023-01-29 01:32:35 +01:00 |
|
Christoffer Lerno
|
dc16f65c8e
|
Change printfln to printfn. Make LLVM 15 tests default.
|
2023-01-11 18:00:08 +01:00 |
|
Christoffer Lerno
|
43dc2d650c
|
Use "String" consistently for "char[]" (#694)
Use "String" consistently for "char[]". Fix win32 return value.
|
2023-01-07 22:50:33 +01:00 |
|
Christoffer Lerno
|
da1a45f718
|
Remove iptrdiff and uptrdiff. Bump version to 0.3.100
|
2022-11-17 23:44:54 +01:00 |
|
Christoffer Lerno
|
73619817ba
|
Update panic function and early work on tests. Optimize ABI lowering.
|
2022-11-03 19:38:34 +01:00 |
|
Christoffer Lerno
|
fa064276bc
|
Disallow $offsetof / $alignof on types. Version bump.
|
2022-10-08 12:41:40 +02:00 |
|
Christoffer Lerno
|
81bea9bad6
|
Updated untyped lists.
|
2022-09-24 14:35:58 +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
|
fc943a98ef
|
Foreach_r, bump to 0.3.15
|
2022-08-13 03:04:09 +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
|
d3a053e049
|
Updated mangling and bump to 0.2.18
|
2022-07-20 12:22:03 +02:00 |
|
Christoffer Lerno
|
547d30eb1e
|
Disallow complist as a regular macro parameter.
|
2022-07-18 01:22:29 +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
|
09d50ebf6c
|
New import rules.
|
2022-06-04 01:41:23 +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 |
|
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
|
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
|
ea3b50d039
|
Codegen with better annotations on globals.
|
2022-01-10 13:58:15 +01:00 |
|
Christoffer Lerno
|
869aa7ed76
|
Do not store direct parameters that are only read.
|
2022-01-04 23:16:32 +01:00 |
|
Christoffer Lerno
|
c52629d60f
|
Main arguments are now slices if desired.
|
2021-12-17 01:28:57 +01:00 |
|
Christoffer Lerno
|
3242bcabc0
|
Do-while uses for codegen and somewhat smaller llvm codegen
|
2021-11-28 01:35:09 +01:00 |
|
Christoffer Lerno
|
164a1ef59d
|
Initial foreach implementation based on index
|
2021-11-27 00:57:27 +01:00 |
|
Christoffer Lerno
|
1ba03f75c2
|
Fix debug parameter definition. Array foreach GEP.
|
2021-11-22 21:03:00 +01:00 |
|