Compiler doesn't complain with multiple definitions
John Colvin via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Thu Nov 12 07:29:12 PST 2015
On Thursday, 12 November 2015 at 15:06:26 UTC, ric maicle wrote:
> On Thursday, 12 November, 2015 07:50 PM, anonymous wrote:
>> __traits has special syntax. The first "argument" must be from
>> a list of
>> special keywords that only have special meaning in that place.
>> You can't
>> put the name of a struct there, and you can't put the special
>> keyword
>> anywhere else. So there's no ambiguity, and you're not
>> redefining
>> anything. Everything's fine.
>
> Thanks for clarifying __traits.
>
> On another thing. I'm wondering why the compiler didn't issue a
> warning
> on struct isPOD and byte isPOD? Isn't this called 'shadowing'
> or have I
> misunderstood the term?
If I remember correctly:
Shadowing globals is allowed, all other instances of shadowing
are not.
More information about the Digitalmars-d-learn
mailing list