February 25, 2014
https://d.puremagic.com/issues/show_bug.cgi?id=3332


Adam D. Ruppe <destructionator@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |destructionator@gmail.com


--- Comment #5 from Adam D. Ruppe <destructionator@gmail.com> 2014-02-25 10:50:38 PST ---
I'm not sure this is a bug, and I'd be weary of any fix for it because this comes from an extremely useful feature of template mixins.

Any name in the class overrides the same name from the template mixin. This is useful because it allows for easy customization of a single function from an otherwise very useful mixin. Kinda like inheriting from a class and just overriding one function, very good ability to have.

But since it is the *name*, if you override one, it blasts the entire overload set. Here, you did your own constructor, so all overloaded constructors are considered overridden. I'm not sure if you can just alias in the mixin template's functions to add them to the set.



So I kinda wish you could change just one overload so this might be a bug, but overriding a function like this is a useful, documented feature of template mixins so it might not be and either way, caution is needed not to flush the baby with the bathwater.

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
February 25, 2014
https://d.puremagic.com/issues/show_bug.cgi?id=3332



--- Comment #6 from Jacob Carlborg <doob@me.com> 2014-02-25 12:00:01 PST ---
I might not have really understood how mixins worked back when I reported this issue so it might not be an issue.

There is one problem with this though. As far as I know you cannot alias a constructor to bring the two constructors to the same overload set.

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------