uda pattern foo and foo(val)
Steven Schveighoffer
schveiguy at gmail.com
Wed Sep 23 03:31:55 UTC 2020
On 9/22/20 10:20 PM, Adam D. Ruppe wrote:
> On Wednesday, 23 September 2020 at 02:07:04 UTC, Steven Schveighoffer
> wrote:
>> I just said pragma(msg, __traits(getAttributes, z))
>
> Ah, ok, this is weird, `pragma(msg, __traits(getAttributes, z)[0])`
> works just fine!
Oh, yeah, weird! I see that now. So it will actually work, it's just my
method of testing "will this work", which actually isn't how I would use
it, triggers some obscure bug, lol.
> But that might be adequate for you - just loop over the attributes and
> use them one by one. Which you'd do anyway.
Yep, exactly what I would be doing anyway.
> I suspect this is overload resolution not happening yet when you
> getAttributes but then it happens when it is forced evaluated with the
> index. (prolly one of those order-of-semantic bugs in dmd)
I thought it had something to do with the optional parentheses.
Thanks anyway for helping!
-Steve
More information about the Digitalmars-d-learn
mailing list