Christoffer Lerno
40554192b1
- Make accepting arguments for main a bit more liberal, accepting main(int argc, ZString* argv)
...
- Make `$echo` and `@sprintf` correctly stringify compile time initializers and slices.
- Fixes methodsof to pick up all sorts of extension methods. #2192
- Fix regression accidentally allowing `$assert $foo, $bar`
2025-06-08 00:23:04 +02:00
Christoffer Lerno
f66cadccd2
Add printf format to $assert and $error #2183 .
2025-06-06 23:50:55 +02:00
Christoffer Lerno
be511b26cd
Additional fixes on $define
2025-06-06 20:11:58 +02:00
Christoffer Lerno
4cfa5441d2
Additional fixes on $define
2025-06-06 15:38:46 +02:00
Christoffer Lerno
5e45c34f21
- Deprecate String.is_zstr and String.quick_zstr #2188 .
2025-06-06 15:30:46 +02:00
Christoffer Lerno
b893697a87
Various fixes for $defined
2025-06-06 14:41:20 +02:00
Christoffer Lerno
f2daf2e11e
@sprintf macro (based on the $$sprintf builtin) allows compile time format strings #1874 .
2025-06-06 03:18:28 +02:00
Christoffer Lerno
9baeca3a8e
$eval now also works with @foo, #foo, $Foo and $foo parameters #2114 .
2025-06-06 01:23:23 +02:00
Christoffer Lerno
d6d0e08906
Allow inference across && #2172 .
2025-06-05 14:20:40 +02:00
Christoffer Lerno
c9d9127da6
Deprecate foo.#bar.
2025-06-05 12:51:35 +02:00
Christoffer Lerno
7f85534414
- Implicitly convert from constant typeid to Type in $Type assignment, and $assignable.
...
- Make $Type parameters accept constant typeid values.
2025-06-05 00:37:16 +02:00
Christoffer Lerno
ba1332dc2a
Splatting const slices would not be const. #2185
2025-06-04 16:09:15 +02:00
Christoffer Lerno
72cc8e430a
-0xFF will now be a signed integer.
...
- `-2147483648`, MIN literals work correctly.
2025-06-04 15:20:49 +02:00
Christoffer Lerno
9645bd3289
- $typefrom now also accepts a constant string, and so works like $evaltype.
...
- `$evaltype` is deprecated in favour of `$typefrom`.
2025-06-03 14:51:56 +02:00
Christoffer Lerno
d697b910ba
Removed the naive check for compile time modification, which fixes #1997 but regresses in detection.
2025-06-01 23:50:13 +02:00
Christoffer Lerno
c3d2b2824c
Bug using #foo arguments with $defined #2173
2025-05-31 17:35:29 +02:00
Christoffer Lerno
da25a411f9
Generic faults is disallowed.
2025-05-30 19:12:26 +02:00
Christoffer Lerno
f2703508f2
Fixed test.
2025-05-29 21:14:50 +02:00
Christoffer Lerno
00f1206f3c
Compiler didn't check foreach over flexible array member, and folding a flexible array member was allowed #2164 .
2025-05-28 22:21:06 +02:00
Christoffer Lerno
83d6b35afe
Add d as floating point suffix for double types.
2025-05-28 12:02:24 +02:00
Christoffer Lerno
be3f9007c9
Check pointer/slice/etc on [out] and & params. #2156 .
2025-05-27 23:03:43 +02:00
Christoffer Lerno
966e8107f8
Add $$matrix_mul and $$matrix_transpose builtins.
2025-05-27 00:50:21 +02:00
Christoffer Lerno
972c84b65b
for with incorrect var declaration caused crash #2154 .
2025-05-26 15:56:51 +02:00
Christoffer Lerno
9461873b4c
Distinct types could not be used with tagof #2152
2025-05-26 00:57:20 +02:00
Christoffer Lerno
8d563eba7a
Implicit casting from struct to interface failure for inheriting interfaces #2151 . Fix second bug in #2148
2025-05-24 17:10:11 +02:00
Christoffer Lerno
b5ddc36d7f
Limit vector max size, default is 4096 bits, but may be increased using --max-vector-size.
2025-05-23 21:40:14 +02:00
Christoffer Lerno
9d5b31dad5
Missing error on default values for body with default arguments #2148 .
2025-05-23 18:57:21 +02:00
Christian Brendlin
84aee6a25b
Feature: Add inherit_stdio Option for SubProcess ( #2138 )
...
* add inherit_stdio option
2025-05-22 11:06:23 +02:00
Gregory Oakes
5c3b637cf6
Add Maybe.equals when inner type is equatable.
2025-05-22 00:06:11 +02:00
Christoffer Lerno
bd1de1e7dc
&&& was accidentally available as a valid prefix operator.
2025-05-21 23:36:33 +02:00
Christoffer Lerno
3cd2267b0a
Update error message.
2025-05-20 23:00:31 +02:00
Christoffer Lerno
7fcc91edc8
Improve error message when encountering recursively defined structs. #2146
2025-05-19 21:36:47 +02:00
Christoffer Lerno
9052f07c19
Empty default case in @jump switch does not fallthrough #2147 .
2025-05-19 21:18:23 +02:00
Christoffer Lerno
c7f0d54328
Designated const initializers with {} would overwrite the parent field.
2025-05-18 23:40:52 +02:00
Christoffer Lerno
498803e9ba
Error when using named argument on trailing macro body expansion #2139 .
2025-05-17 23:50:15 +02:00
Christoffer Lerno
082457c5fb
Incorrect parsing of call attributes #2144 .
2025-05-17 22:10:03 +02:00
Christoffer Lerno
23897bc9a4
- Incorrect parsing of ad hoc generic types, like Foo{int}**** #2140 .
...
- $define did not correctly handle generic types #2140 .
2025-05-17 21:14:10 +02:00
Christoffer Lerno
8ada2a70d9
Using a non-const as the end range for a bitstruct would trigger an assert.
2025-05-17 18:55:58 +02:00
Christoffer Lerno
2f3954a7d9
Deprecate SomeFn.params
2025-05-16 21:57:18 +02:00
Christoffer Lerno
b7ae5dce8b
Deprecate MyEnum.elements.
2025-05-16 16:12:37 +02:00
Christoffer Lerno
91db6ceeda
Defining an enum like ABC = { 1 2 } was accidentally allowed.
2025-05-16 09:56:08 +02:00
Christoffer Lerno
64ef3fc756
Some folding was missing in binary op compile time resolution #2135 .
2025-05-15 16:04:55 +02:00
Christoffer Lerno
93dd432b62
Improve error message when using keywords as functions/macros/variables #2133 .
2025-05-15 15:27:14 +02:00
Christoffer Lerno
6c822e5aa3
Add math::@ceil() compile time ceil function. #2134
2025-05-15 12:46:46 +02:00
Christoffer Lerno
8c741c617c
Variable aliases of aliases would not resolve correctly. #2131
...
Variable aliases could not be assigned to.
2025-05-15 09:36:16 +02:00
Christoffer Lerno
24ebe975d8
Allow the right hand side of ||| and &&& be runtime values.
2025-05-14 23:40:36 +02:00
Christoffer Lerno
36eb650228
Correctly error on @attrdef Foo = ;.
2025-05-14 12:15:48 +02:00
DragonFriend
50b4d7aa35
Add replace and treplace to String ( #2127 )
...
* Add replace and treplace functions to String
2025-05-14 11:00:20 +02:00
Christoffer Lerno
abe4727c3a
Deprecate uXX and iXX bit suffixes.
...
Add experimental LL / ULL suffixes for int128 and uint128 literals.
2025-05-13 23:48:59 +02:00
Christoffer Lerno
c528f53d58
- attrdef with any invalid name causes compiler assert #2128 .
2025-05-12 01:41:19 +02:00