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
|
748c737e8f
|
0.5.4: Hash variables accept designated initializers. @safemacro overrides the need for @ in macro names. Fixes to macro context evaluation. Updated allocator api. Removed install_win_reqs.bat. Deterministic @init for MacOS. Fixed temp memory issue with formatter. Support LLVM 19. Add support to compare bitstructs using == and !=. Support Windows .def files. Removed invalid grammar from grammar.y. Support compile time folding of &|^~ for bitstructs. output project setting now respected. Fix issue where constants were not properly constant folded. Add temp_push/pop. Aliased declarations caused errors when used in initializers. Fix export output. Fix of const ternary #1118. Fix of $$MODULE in nested macros #1117. Fix debug info on globals. out now correctly detects subscript[] use #1116. Lateral implicit imports removed. Default to '.' if no libdir is specified. Improved error messages for --lib. Fix raylib snake example. Overzealous local escape check corrected #1127. Improved yacc grammar #1128. --linker argument #1067. Fixes to the matrix operations #1130. Added GenericList.
|
2024-02-15 21:39:33 +01:00 |
|
Christoffer Lerno
|
1e38ccdd2b
|
Fix missing free on GrowableBitSet. init_new/init_temp for GrowableBitSet, LinkedList, List, HashMap, DString, ByteBuffer. Interface to_string renamed to_new_string. Change in allocator usage, malloc is now heap. Added new_array, new_zero_array, new, new_clear, clone. Concat => concat_new. string::printf => string::new_format, string::tprintf => string::tformat. "to_*" are now "to_new_*" and "to_temp_*". "from_*" is "new_from*"
|
2023-11-09 01:59:49 +01:00 |
|
Christoffer Lerno
|
120e21b80b
|
Convencience function for random + entropy function.
|
2023-10-31 22:21:38 +01:00 |
|
Christoffer Lerno
|
cd7a03c2cf
|
Interface based streams. Fix for initializing with a force unwrap inside. Allow $define to take a list. Allow $define to return error on argument type mismatch in call. Fixed broken bit operations on boolean vectors.
|
2023-10-31 01:06:59 +01:00 |
|
Christoffer Lerno
|
1aa038c92f
|
Interface based streams. Fix for initializing with a force unwrap inside. Allow $define to take a list. Allow $define to return error on argument type mismatch in call. Fixed broken bit operations on boolean vectors.
|
2023-10-31 01:06:59 +01:00 |
|
Christoffer Lerno
|
89d4c2cab7
|
Allocator uses protocols. Fix bug where it was not possible to pass a ref variable as a ref variable. Correct codegen for !anyptr.
|
2023-10-14 12:39:46 +02:00 |
|
Christoffer Lerno
|
a1ecf2211f
|
as_str() replaced by str_view()
|
2023-09-24 23:50:16 +02:00 |
|
Christoffer Lerno
|
d67e846712
|
Remove cast from void! to anyfault. Rename @catchof to @catch
|
2023-09-09 22:49:32 +02:00 |
|
Christoffer Lerno
|
9a6d83f526
|
Updated stream API.
|
2023-09-03 01:14:15 +02:00 |
|
Pierre Curto
|
d709c18f5f
|
std/lib/core: rename DString.str to DString.as_str (#834)
Signed-off-by: Pierre Curto <pierre.curto@gmail.com>
|
2023-07-08 00:10:04 +02:00 |
|
Christoffer Lerno
|
848a5212ef
|
Fixes #811. Update some stdlib methods. Header printout correctly picks a name. #804
|
2023-07-03 13:17:43 +02:00 |
|
Christoffer Lerno
|
bff7b492a2
|
Further bitstruct cast fixes. Updated code.
|
2023-05-10 13:03:15 +02:00 |
|
Christoffer Lerno
|
809321e20c
|
Updated grammar. Removal of elif. Removal of ':' ';' in some ct statements. Empty faults is now an error. Remove "define" for types. Remove "private". Better errors on incorrect bitstruct syntax. Introduction of wildcard type rather than optional wildcard. Removal of scaled vector type. mkdir and rmdir. Disallow define @Foo() = { @inline }. Add handling for @optreturn and change it to @return!. Restrict interface style functions. Updated x64 ABI. stdlib updates to string. Removed deprecated functions. Update how variadics are implemented. Extended error messages. x86 ABI fixes. Shift check fixes. '!' and '?' are flipped. No trailing ',' allowed in functions. Fix to string parsing. Allow l suffix. Simplifying flatpath. any replaces variant, anyfault replaces anyerr. Allow getting the underlying type of anyfault. De-duplicate string constants. Fix of readme. Extended list. Fix of "(MyEnum)x + 1". Clock and DateTime types. Fixes to array concat.
|
2023-04-21 10:56:39 +02:00 |
|
Christoffer Lerno
|
8b0df0ee11
|
try? / catch?
|
2023-03-17 22:49:48 +01:00 |
|
Christoffer Lerno
|
1480b8f872
|
Update examples and contracts.
|
2023-03-08 15:57:42 +01:00 |
|
Christoffer Lerno
|
dd4edfb747
|
Updated malloc/calloc/realloc/free deprecation of old helper functions. Add checks to prevent incorrect alignment on types when using malloc. Better errors from $assert. Added @deprecated. Fixed issue using named arguments after varargs.
|
2023-02-27 15:03:27 +01:00 |
|
Christoffer Lerno
|
5e457be605
|
Implement more @export / @private improvements. Make @private default… (#729)
|
2023-02-13 08:31:40 +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
|
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
|
a0a2e27127
|
$vasplat() implemented. $vacount removed (). Improved dynscope implementation. Version bump to 0.3.37.
|
2022-09-09 12:19:47 +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
|
550bca79e9
|
Updated memory allocator. Fix in printf printing pointers. Added aligned_alloc to libc module. Renamed MemoryArena -> ArenaAllocator. New temp allocator. @pool(), @scoped, @tscoped macros. Bump to 0.3.2.
|
2022-08-02 14:42:46 +02:00 |
|
Christoffer Lerno
|
9886d381c0
|
Update allocator and resolution.
|
2022-07-30 02:55:32 +02:00 |
|
Christoffer Lerno
|
e36e4b60e4
|
Fprintf changes.
|
2022-07-26 16:12:22 +02:00 |
|
Christoffer Lerno
|
7065c28a08
|
Some fixes to string. Added fprintf and String.printf. Updated boolerr example.
|
2022-07-26 13:44:08 +02:00 |
|
Christoffer Lerno
|
da4df9d626
|
Less libc in example.
|
2022-07-26 02:21:49 +02:00 |
|
Christoffer Lerno
|
a7e4dda360
|
Added examples.
|
2022-07-26 02:10:18 +02:00 |
|