Christoffer Lerno
5a82f672b5
Update to constdef
2026-02-20 01:13:20 +01:00
Christoffer Lerno
585c66100d
- Member access on a struct returned by the assignment expression, cause crash #2947
2026-02-19 20:43:45 +01:00
Christoffer Lerno
acc4a900f5
- New const enum declaration syntax.
...
- New enum associated value syntax.
2026-02-12 14:43:56 +01:00
Christoffer Lerno
32b1df0f86
Set target in test.
2026-01-29 00:43:53 +01:00
Christoffer Lerno
50718cb905
- Crash in slice expression when it contains a rethrow #2872
...
- Multiple issues when rethrowing inside of expressions #2873
2026-01-29 00:42:20 +01:00
Christoffer Lerno
414c0c9438
- Initializer did not correctly handle second rethrow #2870
...
- Crash encountering panic in if-else style switch #2871
2026-01-28 22:56:59 +01:00
Christoffer Lerno
362d5680e4
- Optional in initializer cause a crash #2864
...
- Negating a global address with offset was a counted as a global runtime constant #2865
- Converting static "make_slice" to array failed to be handled #2866
- Narrowing a not expression was incorrectly handled #2867
- Vector shift by optional scalar failed #2868
2026-01-28 21:59:40 +01:00
Christoffer Lerno
d276d3767f
Incorrect handling when reporting fn with optional compile time type #2862
2026-01-28 18:51:21 +01:00
Christoffer Lerno
4fbb42833e
- Crash when creating $Type* where $Type is an optional type #2848
...
- Crashes when using `io::EOF~!` in various unhandled places. #2848
2026-01-27 13:32:08 +01:00
Christoffer Lerno
3e76b7ff1c
Fixes to optional rethrow in expressions.
2026-01-26 04:10:38 +01:00
Christoffer Lerno
a1ff3b05ed
- Lowering of optional in && was incorrect #2843
2026-01-25 19:50:28 +01:00
Christoffer Lerno
8bd942c1b8
- Store of zero in lowering did not properly handle optionals in some cases #2837
2026-01-25 04:57:35 +01:00
Christoffer Lerno
9b2fc04959
ompile time dereference of a constant slice was too generous #2821
2026-01-24 22:42:04 +01:00
Christoffer Lerno
ce8167a102
- Incorrectly try compile time int check on vector #2815
...
- Generating typeid from function gives incorrect typeid #2816
- Recursive definitions not discovered when initializer is access on other const #2817
- Slice overrun detected late hit codegen assert #2822
2026-01-24 19:38:51 +01:00
Christoffer Lerno
397d065a74
- Constant shifting incorrectly doesn't flatten the underlying vector base #2825
...
- String not set as attributes resolved breaking has_tagof #2824
- Self referencing forward resolved const enum fails to be properly detected #2823
2026-01-24 18:32:26 +01:00
Christoffer Lerno
ae5047b73f
Deprecating multi-level array length inference. int[*][*] is deprecated and will be removed 0.8.0.
2026-01-22 23:50:39 +01:00
Christoffer Lerno
cdabe8fd9e
- Create optional with ~ instead of ?. return io::EOF?; becomes return io::EOF~.
...
- Deprecated use of `?` to create optional.
2026-01-20 16:10:28 +01:00
Christoffer Lerno
0fea6c6056
- Bitstruct with unevaluated user-defined type would cause a crash.
...
- Using named parameters with builtins would cause a crash.
- In some cases, using missing identifiers with builtins would cause a crash.
- Using `$defined` with function call missing arguments would cause a crash.
- Adding @nostrip to a test function would crash.
- Mixing struct splat, non-named params and named params would crash rather than to print an error.
- Creating a char vector from bytes would crash.
- Using $$wstr16 with an illegal argument would crash instead of printing an error.
2026-01-19 02:49:54 +01:00
Christoffer Lerno
c3b2694834
Generics with <>. Deprecation of {} generics.
2026-01-18 00:33:43 +01:00
Christoffer Lerno
70c4b24519
- In some cases, a type would not get implicitly converted to a typeid #2764 .
2026-01-16 11:41:18 +01:00
Christoffer Lerno
d96624c578
Decoupled generics ( #2695 )
2025-12-29 17:01:03 +01:00
Christoffer Lerno
bf1d401566
Converting between simd/non-simd bool vector would hit a compiler assert. #2691
2025-12-29 16:59:34 +01:00
Christoffer Lerno
cb0b94c064
- Optional does not play well with bit ops #2618 .
2025-12-06 00:46:42 +01:00
Christoffer Lerno
4e66693065
- Refactored @simd implementation.
...
- Regression vector ABI: npot vectors would load incorrectly from pointers and other things. #2576
2025-11-16 01:37:39 +01:00
Christoffer Lerno
791cbbfb62
Fix division-by-zero checks on a /= 0 and b /= 0f #2558 .
2025-11-03 16:47:57 +01:00
Christoffer Lerno
423152202f
Dev ( #2545 )
...
* Optimize vector load / store. Fixes to alignment. Support typedef with `@simd` and `@align` #2543 . Update vector ABI #2542
* Fix alignment issue with indirect arguments.
2025-10-25 12:31:06 +02:00
Christoffer Lerno
8f5d5a0bb5
"Maybe-deref" subscripting foo.[i] += 1 #2540 .
2025-10-23 00:42:38 +02:00
Christoffer Lerno
ae33d1a206
Fix issue testing if something is global. Remove ScopeId. Adding comments to code.
2025-10-11 13:50:06 +02:00
Christoffer Lerno
d3db91536c
Incorrect nameof on nested struct names. #2492
2025-09-20 15:00:44 +02:00
Christoffer Lerno
3345e70c63
Comparing slices and arrays of user-defined types that implement == operator now works #2486 .
2025-09-19 11:21:29 +02:00
Christoffer Lerno
a2206f1bcd
int val = some_int + some_distinct_inline_int errors that int cannot be cast to DistinctInt #2468
2025-09-08 10:21:47 +02:00
Christoffer Lerno
e605a21fd3
Revert "Revert 0.7.6 code for 0.7.5 re-release"
...
This reverts commit d1349c9cfb .
2025-09-05 23:30:35 +02:00
Christoffer Lerno
d1349c9cfb
Revert 0.7.6 code for 0.7.5 re-release
2025-09-05 18:42:54 +02:00
niedlich
cf14787552
Typo fixes ( #2457 )
...
* fix typos in comments and strings
* fix typos in symbols (and some comments/strings)
* fix typos in releasenotes.md
---------
Co-authored-by: Christoffer Lerno <christoffer@aegik.com >
2025-09-04 01:07:07 +02:00
Christoffer Lerno
14a929588a
Confusing error message when type has [] overloaded but not []= #2453
2025-09-02 23:56:15 +02:00
Christoffer Lerno
f36e9fea48
Types converts to typeid implicitly.
2025-08-22 00:26:18 +02:00
Christoffer Lerno
551ce34b9b
- foo[x][y] = b now interpreted as (*&foo[x])[y] = b which allows overloads to do chained [] accesses.
2025-08-19 01:57:51 +02:00
Christoffer Lerno
334ee975b9
Assignment evaluation order now right->left, following C++17.
2025-07-31 11:49:42 +02:00
Christoffer Lerno
869bcf8b2b
Removing use of $assignable and deprecate it. Fix regression for stacktraces on MacOS. Added readline_to_stream. Regression: Chaining an optional together with contracts could in some cases lose the optional.
2025-07-21 03:20:40 +02:00
Christoffer Lerno
2acf3c57c7
Check unaligned array access.
2025-07-18 20:45:57 +02:00
Christoffer Lerno
3650b81970
Segfault when failing to cast subexpression to 'isz' in pointer subtraction #2305 .
2025-07-15 21:47:49 +02:00
Christoffer Lerno
dc23cef59a
LLVM 20 compatibility for test.
2025-07-07 03:01:09 +02:00
Christoffer Lerno
808ab56545
- Bit shift operation fails with inline uint enum despite matching underlying type #2279 .
2025-07-07 02:30:54 +02:00
Christoffer Lerno
a20e74c401
Fixes to thread local pointer handling.
2025-07-06 00:22:21 +02:00
Christoffer Lerno
7cdb1ce9eb
Catch accidental foo == BAR; where foo = BAR; was most likely intended. #2274
2025-07-05 20:40:55 +02:00
Christoffer Lerno
13bb2b6690
Const Enums From / to ordinal using casts is back. Add "--use-old-enums", deprecating lookup.
2025-06-30 21:41:52 +02:00
Christoffer Lerno
a894adbdd6
Assert comparing untyped lists #2240 .
2025-06-24 12:47:08 +02:00
Christoffer Lerno
794e8371c8
Rename test.
2025-06-21 23:47:49 +02:00
Christoffer Lerno
cd3e924d1e
Fix test for LLVM 20
2025-06-20 02:01:32 +02:00
Christoffer Lerno
0df538d0e2
Test LLVM 20 compatibility
2025-06-18 22:41:35 +02:00