Christoffer Lerno
fa50268b4e
Update max memory.
2025-07-04 17:46:02 +02:00
Christoffer Lerno
ae1d51d089
--max-mem now works correctly again.
2025-07-04 17:06:52 +02:00
Christoffer Lerno
1b8355ff07
Update error message on invalid operator.
2025-07-04 14:33:06 +02:00
Christoffer Lerno
014f734260
Remove unused code.
2025-07-04 02:26:01 +02:00
Christoffer Lerno
de4963ef95
Add --echo-prefix to edit the prefix with $echo statements. Supports {FILE} and {LINE}
2025-07-04 01:09:02 +02:00
Christoffer Lerno
a46f73ad24
Const slice indexing was not bounds checked.
2025-07-03 23:53:01 +02:00
Christoffer Lerno
759bc1d909
Const slice lengths were not always detected as constant.
2025-07-03 23:32:02 +02:00
Christoffer Lerno
9b3b4ae8be
$for ct-state not properly popped.
2025-07-03 22:20:14 +02:00
Christoffer Lerno
b3e7f074e9
Forgot the fix...
2025-07-03 15:46:35 +02:00
Christoffer Lerno
ee1ed73fc5
Non-const macros may not return untyped lists.
2025-07-03 15:45:14 +02:00
Christoffer Lerno
10e11fb742
Better detect offending cast.
2025-07-03 15:14:24 +02:00
Christoffer Lerno
8b47317ec7
Fix issue with labelled break inside of a $switch.
2025-07-03 13:11:12 +02:00
Christoffer Lerno
04626b72cd
Check up the hierarchy when considering if an interface cast is valid #2267 .
2025-07-03 12:36:35 +02:00
Christoffer Lerno
2151cd0929
Missing bounds check on upper bound with const ranges foo[1:3].
2025-07-02 13:12:49 +02:00
Christoffer Lerno
93ded9c1e0
Switch case with const non-int / enum would be treated as ints and crash. #2263
2025-07-02 12:26:26 +02:00
Christoffer Lerno
20964b43ce
Fix of const enum resolution order #2264
2025-07-02 12:01:52 +02:00
Christoffer Lerno
ad48637cbb
Correctly reject interface methods type and ptr.
2025-07-01 20:08:46 +02:00
Christoffer Lerno
89507bd335
Improved error messages on missing qualifier on enum value. #2260
2025-07-01 17:08:12 +02:00
Christoffer Lerno
4502a9286c
Fix typeid on compile time types.
2025-07-01 00:27:17 +02:00
Christoffer Lerno
965ef19a5b
Allow $typeof to return a compile time type.
2025-07-01 00:02:12 +02:00
Christoffer Lerno
8f86b331c1
Fix --use-old-enums
2025-06-30 23:10:32 +02:00
Christoffer Lerno
59a1590955
Hex string formatter check incorrectly rejected slices.
2025-06-30 21:41:52 +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
4a803ed0cf
Bump version
2025-06-30 19:33:41 +02:00
Christoffer Lerno
9e80f1b26c
Release candidate.
2025-06-30 17:21:32 +02:00
Christoffer Lerno
9299c78747
Detect when a slice on the stack is accidentally returned from a function.
2025-06-30 15:56:19 +02:00
Christoffer Lerno
e1a125e326
- Initial support for #1925 , does not affect C compilation yet, and doesn't try to link etc. Using "--emit-only"
2025-06-29 23:50:17 +02:00
cubedium
a13eb99962
Added colored error and warning compiler messages. ( #2253 )
...
* Added colored error and warning compiler messages.
* Fixed the warning messages to be colored yellow instead of blue.
* Made the use_ansi function public with compiler_internal.h and toggleable colored error messages with the --ansi flag
* Moved use_ansi declaration. No ansi on test/lsp output.
---------
Co-authored-by: Christoffer Lerno <christoffer@aegik.com >
2025-06-29 20:22:09 +02:00
Christoffer Lerno
9285dfefad
- $member.get supports bitstructs.
...
- $member.set for setting members without the *& trick.
- io::struct_to_format now supports bitstructs.
2025-06-29 01:19:09 +02:00
Christoffer Lerno
2d535aaa25
Default assert() message drops parens #2249 .
2025-06-28 00:07:26 +02:00
Christoffer Lerno
dc1e5323ab
Segfault in the compiler when using a bitstruct constant defined using a cast with an operator #2248 .
2025-06-27 23:00:14 +02:00
Christoffer Lerno
63abf1c2f8
- Compiler null pointer when building a static-lib with -o somedir/... #2246
2025-06-27 15:46:17 +02:00
Christoffer Lerno
df8904909b
Fix bugs relating to optional interface addr-of #2244 .
2025-06-27 15:02:12 +02:00
Christoffer Lerno
e986e3a8c0
Refactoring.
2025-06-25 15:08:57 +02:00
Christoffer Lerno
f67da4f315
Refactoring, optimize negation in if statement.
2025-06-25 12:33:17 +02:00
Christoffer Lerno
2b0fb52f65
Fix regression: Enum inference with compare operators #2241
2025-06-25 00:55:29 +02:00
Christoffer Lerno
faf073885f
Updated fix of #2218
2025-06-24 22:28:14 +02:00
Christoffer Lerno
11b8a9808d
Fix overeager constant folding.
2025-06-24 16:17:04 +02:00
Christoffer Lerno
1ef9c73342
Compile-time comparison of constant vectors. #1575 .
2025-06-24 16:04:24 +02:00
Christoffer Lerno
a894adbdd6
Assert comparing untyped lists #2240 .
2025-06-24 12:47:08 +02:00
Christoffer Lerno
605a7c4091
Improve error message on pointer diff #2239 .
2025-06-23 23:47:26 +02:00
Christoffer Lerno
affb722b23
@tag didn't work with members #2236 .
2025-06-23 14:45:16 +02:00
Christoffer Lerno
1b2f5989e1
Assert casting bitstruct to short/char #2237
2025-06-23 14:12:34 +02:00
Christoffer Lerno
0d147a48b2
Another fix to #2226
2025-06-23 00:36:15 +02:00
Christoffer Lerno
aff3a3f746
Compiler segfault when using distinct type in attribute imported from other module #2234 .
2025-06-22 23:58:38 +02:00
Christoffer Lerno
c95204c3f7
Fix inc/dec vector ptr.
2025-06-22 18:09:08 +02:00
Christoffer Lerno
2bbc6cbbca
Further #2226 fixes.
2025-06-21 23:18:17 +02:00
Christoffer Lerno
07bd37da43
Further #2226 fixes.
2025-06-21 16:50:52 +02:00
Christoffer Lerno
a0497e9274
math::overflow_* wrappers incorrectly don't allow distinct integers #2221 .
2025-06-21 13:28:45 +02:00
Christoffer Lerno
fa730e7ec2
Overload resolution fixes to inline typedef #2226 .
2025-06-21 13:03:16 +02:00