Christoffer Lerno
425676a98d
Bug due to missing cast when doing $i[$x] = $z.
...
Added `math::iota`.
2025-03-16 10:58:13 +01:00
Christoffer Lerno
5c77c9a754
- Change distinct -> typedef.
...
- Order of attribute declaration is changed for `alias`.
- Added `LANGUAGE_DEV_VERSION` env constant.
- Rename `anyfault` -> `fault`.
- Changed `fault` -> `faultdef`.
- Added `attrdef` instead of `alias` for attribute aliases.
2025-03-15 20:10:47 +01:00
Christoffer Lerno
fc5615a7a1
Restore def so that libraries work.
2025-03-13 11:51:21 +01:00
Christoffer Lerno
8b49e6c14d
Rename def to alias.
2025-03-13 11:22:27 +01:00
Christoffer Lerno
ae76839347
Fix @return? parsing.
2025-03-13 11:03:19 +01:00
Christoffer Lerno
b8ae2b06d6
Rename @return! to @return?
2025-03-12 21:40:30 +01:00
Christoffer Lerno
c9dbd86d82
Crash resolving a method on Foo[2] when Foo is distinct #2042 .
2025-03-12 15:45:43 +01:00
Christoffer Lerno
d5b211a786
Fault nameof prefixes the first last module path, for instance std::io::EOF is rendered as io::EOF.
2025-03-11 22:46:02 +01:00
Christoffer Lerno
f5d02cd0d2
Crash when trying to convert a struct slice to a vector #2039 .
2025-03-11 21:18:19 +01:00
Christoffer Lerno
8c23c5028d
Make @public import recursive. #2018
...
`import` can now both be @public and @norecurse.
2025-03-10 15:33:29 +01:00
Christoffer Lerno
461bd43a22
Fix Android 2
2025-03-10 11:04:43 +01:00
Christoffer Lerno
fbc8168bb9
Improve error message on foo ?? io::EOF with missing '?' #2036 . Fix build on Android
2025-03-10 11:02:43 +01:00
Christoffer Lerno
ff75f2c21f
Update naming of enum const.
2025-03-10 00:15:50 +01:00
Christoffer Lerno
25bccf4883
New faults and syntax ( #2034 )
...
- Remove `[?]` syntax.
- Change `int!` to `int?` syntax.
- New `fault` declarations.
- Enum associated values can reference the calling enum.
2025-03-10 00:11:35 +01:00
Boris Barbulovski
f21cc02320
Initial Android support. ( #2024 )
...
* Initial Android support.
* Add Android x86_64
* - Typo api_verion
- Typo in DEFAULT_TARGETS
- Removed unnecessary snprintf
---------
Co-authored-by: Christoffer Lerno <christoffer@aegik.com >
2025-03-08 23:38:52 +01:00
Christoffer Lerno
a088a5057a
Remove if (catch foo) { case ... } syntax.
2025-03-07 22:48:28 +01:00
Christoffer Lerno
5898cad98d
Fix typo giving the wrong mem on error, closes #2023 .
2025-03-07 12:14:01 +01:00
Christoffer Lerno
c0b80eccad
Change @return! syntax to require ":" after faults. Update all contracts to consistently use ":" before the description.
2025-03-05 17:11:45 +01:00
Christoffer Lerno
cf0405930e
Fix case where occasionally atomic_load would miscompile.
2025-03-05 01:58:07 +01:00
Christoffer Lerno
28b1e4d182
Fix issue when doing boolean atomic operations.
2025-03-04 16:58:27 +01:00
Christoffer Lerno
2439405e70
- $foreach "()" replaced by trailing ":" $foreach ($x, $y : $foo) -> $foreach $x, $y : $foo:
...
- `$for` "()" replaced by trailing ":" `$for (var $x = 0; $x < FOO; $x++)` -> `$for var $x = 0; $x < FOO; $x++:`
- `$switch` "()" replaced by trailing ":" `$switch ($Type)` -> `$switch $Type:`
- Empty `$switch` requires trailing ":" `$switch` -> `$switch:`
2025-03-04 16:13:47 +01:00
Jonas
46b52ec9ce
Fix Atomic.max ( #2011 )
...
* Fix atomic max and comments in std::atomic
* Updates to `Atomic` to handle distinct types and booleans.
---------
Co-authored-by: Christoffer Lerno <christoffer@aegik.com >
2025-03-04 15:39:03 +01:00
Zack Puhl
177df6321a
add test file for wide string constants
...
add full UTF-8 to wide-str language capabilities
move wstr language constant expressions to builtins and adjust test cases
2025-03-04 13:46:59 +01:00
Christoffer Lerno
0ef99c23a8
Allow swizzling assign, eg. abc.xz += { 5, 10 };
2025-03-04 02:18:24 +01:00
Christoffer Lerno
0925010c07
Removal of any-switches
2025-03-03 15:02:25 +01:00
Christoffer Lerno
3d6f28919c
Aliases were incorrectly considered compile time constants.
2025-03-03 11:35:18 +01:00
Christoffer Lerno
910fc6e364
Post and pre-decrement operators switched places for vector elements. #2010 .
2025-03-03 01:21:01 +01:00
Christoffer Lerno
61c67c8f23
Fix address sanitizer to work on MachO targets (e.g. MacOS).
2025-03-03 00:32:20 +01:00
Christoffer Lerno
8bb99c6f81
Fixes to examples and MSVC compilation.
2025-03-03 00:32:20 +01:00
Christoffer Lerno
fb6b048bd0
Remove operator(@construct). Fix sample.
2025-03-03 00:32:20 +01:00
Christoffer Lerno
2a895ec7be
First 0.7 update, removing all deprecated features.
2025-03-03 00:32:20 +01:00
Christoffer Lerno
dd8e280835
Release 0.6.8
2025-03-01 18:47:08 +01:00
Christoffer Lerno
34c2d8ce77
Fix regression with scripts.
2025-03-01 17:24:38 +01:00
Christoffer Lerno
28b9ff8016
Fixed some additional errors due to the BuildParseContext refactoring.
2025-03-01 12:48:22 +01:00
Christoffer Lerno
76f226f536
Fixed error and poor error message when using an invalid target name.
2025-03-01 12:30:36 +01:00
Christoffer Lerno
1b0ac13d76
Deprecation of operator(@construct)
2025-02-28 10:39:08 +01:00
Christoffer Lerno
f134b8b67a
Swizzling an inline vector in a struct would cause a crash.
2025-02-27 21:49:20 +01:00
Christoffer Lerno
6d3c1f5d2f
Fix final? issues with -o.
2025-02-26 02:51:42 +01:00
Christoffer Lerno
96943ca66f
Check exe and lib output so -o works with directories. Removed construct forms from Maybe.
2025-02-26 02:35:28 +01:00
Christoffer Lerno
374d73af12
Cleanup.
2025-02-26 01:49:19 +01:00
Adversing
81397f0726
Add --print-env option to c3c ( #1880 )
...
* Add `--build-env` for build environment information.
---------
Co-authored-by: Christoffer Lerno <christoffer@aegik.com >
2025-02-26 01:48:03 +01:00
Aleksandr Vedeneev
0c33b78a2f
Test runner args #1967 ( #1988 )
...
* harmonized testrun arguments with c3c --test-* naming
added --test-quiet option
added --test-noleak to disable tracking allocator mem leak detection
added --test-nocapture - tests can print out everything as they run
* Move changes to lib7
---------
Co-authored-by: Christoffer Lerno <christoffer@aegik.com >
2025-02-26 00:49:21 +01:00
Christoffer Lerno
ee5b9e5826
@if declarations were missing from -P output #1973 .
2025-02-25 17:00:47 +01:00
Christoffer Lerno
50680d6893
Fix bug casting bool to int to other int #1995 . Use test_suite7 in CI.
2025-02-25 15:36:06 +01:00
Christoffer Lerno
31096531e1
Several fixes for .o files and -o output, improving handling and naming, checking for existence of sub-folders before output. Warning on using .o and -o output when not single module etc. Fix to static lib regression. Info about asm / llvm / obj output.
2025-02-25 14:05:00 +01:00
Christoffer Lerno
062a67fe75
Updates to file:: and path::, Path is now passed an allocator. path::traverse function. mkdir / rmdir / chdir works directly with strings. Strings get file_basepath, path_dirname. Test suite runner now uses lib7. Bug when printing a parameter declaration error. Fix optional jumps in expression lists, #1942 .
2025-02-25 02:18:33 +01:00
Christoffer Lerno
7083b2b8e5
Added --suppress-run from #1931 .
2025-02-24 11:25:07 +01:00
Christoffer Lerno
3ba68f85fe
Fix bug checking for @builtin
2025-02-24 10:28:50 +01:00
Christoffer Lerno
4f72bc4be9
Fixes to lib7, added parallel test structure.
2025-02-23 13:53:04 +01:00
Christoffer Lerno
3a1aa8bdf0
Fix precedence of braces. Updated to lib2.
2025-02-23 01:30:34 +01:00