Recursive mixin templates

Simen Kjaeraas simen.kjaras at gmail.com
Thu May 16 08:34:43 PDT 2013


On Thu, 16 May 2013 17:01:54 +0200, Sebastian Graf  
<SebastianGraf at t-online.de> wrote:

> I aim to use a simplistic, rough edged property generator, but
> I'm having issues.
> See http://dpaste.dzfl.pl/72837a7a.
> My code and mixin logic seems to work basically, but it gets
> hairy when using mixinMap to generate getters and setters from a
> list in a recursive template fashion. It won't work if I generate
> both getters and setters with mixinMap, but it compiles fine if I
> e.g. want only getters.
> Any help? I smell a compiler bug if I haven't done something
> stupid.

This is one of those weird things. I believe it is intentional, but
I feel it should be a bug. Basically, overload sets cannot cross
mixin borders. So if two mixins create a function with the same name,
they don't overload properly.

I'd say add it to BugZilla if it's not already there. Comment on the
relevant bug if it is - this is not good for the language.

-- 
Simen


More information about the Digitalmars-d-learn mailing list