Should `pragma(inline, expression)` be allowed ?
Basile B.
b2.temp at gmx.com
Tue Oct 20 10:27:16 UTC 2020
On Tuesday, 20 October 2020 at 10:16:26 UTC, Max Samukha wrote:
> On Tuesday, 20 October 2020 at 08:52:07 UTC, Basile B. wrote:
>
>>
>> yeah, CTFE on `version()` would be basically like `static if
>> (ident <op> ident)` and alikes, so `version()` much less
>> justified because not special anymore.
>>
>> By the way, to the attention of James, the other day I've
>> found this nice helper by Simons K:
>> https://forum.dlang.org/post/tghdaffyugrajmenddav@forum.dlang.org, allowing to use version idents in static if expressions, the easiest way possible.
>
> It takes a special kind of stubbornness to reject the fact that
> version's limitations failed to serve their purpose.
IIRC the main rationale for version limitations is that they are
supposed to prevent bugs related to preprocessors in other
languages, which may be counter- intuitive to verify: People
complain that it's not super friendly to combine versions but do
they complain because of pernicious bugs inherent to the lack of
combinations ?
side note: I'm not especially pro D-versions (my toy language
allows version operator for example [1]), but I understand why
they are limited in D. It's been explained many times.
[1]:
https://gitlab.com/basile.b/styx/-/blob/master/src/styx/semantic/versions.d#L403
More information about the Digitalmars-d
mailing list