On Thu, Feb 14, 2013 at 12:05:02PM -0600, Dave Rolsky wrote:
> This is definitely a bug but it might be tricky to fix. Basically, method 
> modifiers effectively copy the modified sub into the class that has the 
> modifier. Moose then sees a BUILD in the subclass and baseclass and 
> dutifully calls both.
> 
> But as you point out, what you did is just wrong anyway. The whole point 
> of BUILD is that defining it in subclasses doesn't hide the parent's 
> implementation.
> 
> The only time you need modifiers on BUILD is when you want a role to 
> modify BUILD.

Would it be sensible to warn in this case - when the BUILD sub is copied
from the base class into the subclass to be modified?  That would force the
user to create an empty BUILD first before modifying it.  I can't think of
a case where this behaviour is actually intentionally wanted.

Reply via email to