[Issue 1498] New: Recursive mixins are not allowed

BCS ao at pathlink.com
Thu Sep 13 08:27:28 PDT 2007


Reply to d-bugmail at puremagic.com,

> http://d.puremagic.com/issues/show_bug.cgi?id=1498
> 
> Summary: Recursive mixins are not allowed
> Product: D
> Version: 1.021
> Platform: PC
> OS/Version: Windows
> Status: NEW
> Severity: normal
> Priority: P2
> Component: DMD
> AssignedTo: bugzilla at digitalmars.com
> ReportedBy: samukha at voliacable.com
> I and other people have asked in the NG about recursive mixins and got
> no answer. Recursive mixins are probably tricky to implement but until
> they are implemented or the specs clearly prohibit them, it is a bug
> (and major one with respect to what I'm trying to do).
> 
> template Foos(Funcs...)
> {
> static if (Funcs.length)
> {
> mixin Foos!(Funcs[1..$]);
> }
> }
> mixin Foos!(void function(), void function(int));
> 
> Error: mixin
> hello.Foos!(void(*)(),void(*)(int)).Foos!(void(*)(int)).Foos!()
> recursive mixin instantiation
> 

static foreach should cover this




More information about the Digitalmars-d-bugs mailing list