Christoffer Lerno
da65de2d01
Add compare_exchange. Rudimentary threads (subject to change)
2023-01-10 20:46:39 +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
ad48770977
Updated errno. Socket constants and some functions added. Fix error when a macro returns a void! and that macro is in turn set to a return. Removed too permissive casts to subarrays.
2023-01-06 12:46:58 +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
f46697bc54
Updated casts ( #684 )
...
Cast code rework. Remove llvm_set_bool and friends.
2022-12-27 14:16:47 +01:00
Christoffer Lerno
fe9ace713b
Fix str::concat
2022-12-23 14:06:02 +01:00
Christoffer Lerno
1a510207e8
Update string.c3
2022-12-14 23:03:45 +01:00
Nikos Plugachev
a21236d661
Improved string concat
2022-12-14 23:03:45 +01:00
Nikos Plugachev
a749a4d265
Added String.concat, List.clear
2022-12-14 23:03:45 +01:00
Christoffer Lerno
abf0f64ac0
Share method extensions across modules by default. Fix bug in string split.
2022-12-14 13:18:01 +01:00
Christoffer Lerno
a9ed514fe5
Fix bug in defer from macros. Ensure debug location on panic functions. Add getcwd.
2022-12-13 07:50:41 +01:00
Dmitry Atamanov
8b0d409695
Add inlined memcpy and memset builtins and macros. ( #668 )
2022-12-12 11:45:01 +01:00
Christoffer Lerno
af0174f360
Some work on io libs.
2022-12-09 08:45:02 +01:00
Christoffer Lerno
1ea5625183
CT variables now follow CT scopes. It's now allowed to mutate CT variables in deeper runtime scopes.
2022-12-07 16:32:45 +01:00
Christoffer Lerno
5721fcc224
Fix of string function.
2022-12-06 17:48:30 +01:00
Christoffer Lerno
c15fb7460c
Add functions for splitting strings.
2022-12-04 23:01:53 +01:00
Christoffer Lerno
299ec1814b
Add native string -> int conversions. Fix to getline and add tgetline.
2022-12-01 16:13:52 +01:00
Christoffer Lerno
07700ed2c5
Add str::trim and String::tcopy_str. Version bump.
2022-12-01 13:19:08 +01:00
Christoffer Lerno
285299dcd5
Some simple stdlib tests.
2022-11-20 18:16:21 +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
70f6ad1b27
Added "values" module.
2022-10-31 14:40:58 +01:00
Dmitry Atamanov
e070bf22ee
Added pow macros to math module.
2022-10-31 14:09:38 +01:00
Christoffer Lerno
d13b7ac96a
Enable support for int128 across all platforms.
2022-10-20 18:03:02 +02:00
Christoffer Lerno
f86ef8a743
Remove tscoped. Replace str_index_of with "starts_with". Updated copy_zstring/copy. Fixed utf conversion functions. Initial work on "Path". Lexer fix on \\. ABI fix using distinct types. (bool)"" now works correctly. Bug in $if with switches/loops as the first statement fixed. Version bump.
2022-10-20 10:55:14 +02:00
Dmitry Atamanov
dfe3128b16
Add --benchmarking and --testing switches. ( #591 )
...
Added `--benchmarking` and `--testing` switches. Update env.c3
2022-10-13 14:25:45 +02:00
Christoffer Lerno
5d9a7ab0a6
Extend "var" to allow type inference on variables.
2022-10-13 09:37:52 +02:00
Christoffer Lerno
5e184f04e7
List now has correct alignment and takes memory allocator initializer. Bugfix of aligned allocations.
2022-10-12 22:35:36 +02:00
Dmitry Atamanov
959c418e8b
Add a lot of math functions and macros. ( #626 )
2022-10-12 11:52:19 +02:00
Christoffer Lerno
ab78663f3c
Add usz and isz.
2022-10-10 15:44:03 +02:00
Christoffer Lerno
348495b4c8
Added an initial nolibc
2022-10-10 15:44:03 +02:00
Dmitry Atamanov
7fa129932d
Added $$memmove built-in.
2022-10-08 21:41:11 +02:00
Christoffer Lerno
fa064276bc
Disallow $offsetof / $alignof on types. Version bump.
2022-10-08 12:41:40 +02:00
Christoffer Lerno
bb20a38cdb
Updated membersof. "Type.kind" renamed "Type.kindof"
2022-10-07 14:41:10 +02:00
Dmitry Atamanov
1d39fc475f
Added max and min macros to builtin_comparison module.
2022-10-05 23:13:38 +02:00
Christoffer Lerno
db06f99445
"[]=" now works as overload. Improved eval resolution. Added $$FUNCPTR
2022-10-05 22:58:28 +02:00
Christoffer Lerno
cbb731b42b
Fix alignment on temp allocators.
2022-09-29 22:18:12 +02:00
Christoffer Lerno
258a6ba97a
Bug fixes, addition of hash map implementation. ( #605 )
...
* Simple hash map. Fix of bug preventing cast of typeid. Allow declarations in global "$checks". Fix to non-constant default args. Correctly duplicate macro contracts. Allow typeid to add methods. Fix printing of subarrays. Fix bug when printing a function with a module. Fix bug with initializer and creating local variables. Add the compile-only option to the help.
2022-09-29 20:19:31 +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
4d5821408d
Add @castable and @convertible builtin macros, removes the need $castable and $convertible
2022-09-20 22:18:00 +02:00
Christoffer Lerno
48ee567f81
Add types::is_indexable.
2022-09-20 18:45:43 +02:00
Christoffer Lerno
4fa4b2a631
Refactored builtins. Added reduce operations and powi. Version bump.
2022-09-19 14:58:48 +02:00
Christoffer Lerno
9b14340a57
Added prefetch builtin.
2022-09-18 23:27:42 +02:00
Dmitry Atamanov
fd9d300b06
Added Int128BE, UInt128BE, Int128LE and UInt128LE.
2022-09-17 01:53:21 +02:00
Christoffer Lerno
1af41ee394
Fix min/max. Also fix of printf
2022-09-14 12:22:57 +02:00
Christoffer Lerno
3a09f71830
Added initial intvec/floatvec operator
2022-09-11 22:52:01 +02:00
Dmitry Atamanov
97de44b424
Added is_vector macro.
2022-09-05 15:12:23 +02:00
Christoffer Lerno
b863ae2ec5
Fix of binary literals. Bump version to 0.3.32. Renamed rotate_right and rotate_left to rotl and rotr which are the commonly used names.
2022-08-28 22:40:40 +02:00
Christoffer Lerno
4a296032ab
Add fshl fshr + new optimizer.
2022-08-28 16:22:10 +02:00
Christoffer Lerno
1858600449
Fixes issue where functions could not be found if local and imported names clashed.
2022-08-18 20:03:59 +02:00