Christoffer Lerno
9eee250b10
Add DString init.
2023-03-06 09:12:52 +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
f86aa136cb
Updated fopen. ZString.len does not output number of Char32. Add example.
2023-02-23 10:42:36 +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
505543e9b4
Remove import of std::array
2023-02-05 20:59: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
6407eb47a4
Remove of @extname in stdlib.
2023-02-02 21:53:37 +01:00
Christoffer Lerno
5ea15eb708
Make Windows use wWinMain always. Support /SUBSYSTEM:WINDOWS
2023-01-29 01:32:35 +01:00
Christoffer Lerno
03b659373a
Make the quine use "String" rather than char[]
2023-01-26 21:19:16 +01:00
Christoffer Lerno
4561bf5a85
Add quine example.
2023-01-26 21:17:08 +01:00
Christoffer Lerno
39801a304d
Improved support for freestanding.
2023-01-25 11:27:57 +01:00
Christoffer Lerno
2123e81e8e
Make more of the builtins do promotion from int to double for convenience.
2023-01-13 01:09:27 +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
4a99190f96
C3L zip support. Version bump.
2023-01-03 22:40:35 +01:00
Christoffer Lerno
23a78a9ae5
Updated nbodies. Fixed sum/product on floats.
2022-12-30 02:41:17 +01:00
Christoffer Lerno
f622b3bd4c
Cleanup of naming change to optional. Fix of builtin optional handling.
2022-12-27 23:55:23 +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
f73b507ccb
Use project.json instead of .c3p. List project properties. Check project property usage. Change names: lib-dir -> dependency-search-paths, libs -> dependencies, linker-libs -> linked-libraries, linkerlib-dir -> linker-search-paths, csources -> c-sources. Several settings have an xxxx-add, xxxx-override pair for the target, gaining fine grained control over the override.
2022-10-22 15:32:01 +02:00
Christoffer Lerno
26e4662c3b
Project updates.
2022-10-22 01:04:43 +02:00
Christoffer Lerno
db06f99445
"[]=" now works as overload. Improved eval resolution. Added $$FUNCPTR
2022-10-05 22:58:28 +02:00
Christoffer Lerno
ad18d9ba48
Add .hash to integer types. Fixup of make and tmake. Updated map.c3 to become a working example. Fix bug in subarray -> pointer conversion. Search extension methods in std::core. Fix slice <-> slice copy.
2022-09-21 17:26:36 +02:00
Christoffer Lerno
35549c21bc
A brainf**k example.
2022-09-18 01:20:17 +02: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
dabe5769dd
More programs for test.
2022-08-28 20:35:25 +02:00
Christoffer Lerno
9a3e7fd34b
Add the ability to build static libraries. Bump version to 0.3.18
2022-08-16 09:11:02 +02:00
Christoffer Lerno
31d151aa30
Added MSVC download script to prebuilts. Implicitly use msvc_sdk if available. Bump version to 0.3.17
2022-08-14 23:42:18 +02:00
kstrb
213745fccd
Add batch file
2022-08-14 17:46:55 +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
00b880e35e
Nicer plus_minus
2022-08-05 01:01:28 +02:00
Christoffer Lerno
398e19d727
Corrected default alignment on temp alloc. Added str_index_of. Added simple getline. Added a simple calculator. Allow [1..] to create a zero length slice. Added some initial macro contracts. Fix accessing enum functions. Support for @checked. Bump to 0.3.4
2022-08-05 00:42:52 +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
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
Christoffer Lerno
4471ccff13
String works with printf. Example cleanup.
2022-07-26 01:15:36 +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
28a8e17690
Vararg abi fix. Version bumped to 0.2.14
2022-07-13 14:19:09 +02:00
Christoffer Lerno
d403912ec7
Add linker and linked dir arguments to build files.
2022-07-08 14:52:58 +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
224390ce5a
Make builtins loaded by default.
2022-06-04 01:41:23 +02:00
Christoffer Lerno
09d50ebf6c
New import rules.
2022-06-04 01:41:23 +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
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