> I was getting a constraint violation that appeared to come out of nowhere. > It wasn't anywhere that was attempting to set the attribute or call a > constructor. > I couldn't tell where the error was coming from because the Moose error >system doesn't include the complete stack.
That kind of sounds crazy. > By making throw_error() confess() I was able to get the complete stack and >tell that what was going wrong was that the attribute's value builder was >returning undef. throw_error currently confesses, check Moose.pm use Carp 'confess'; .. sub throw_error { # FIXME This shift; goto \&confess } Furthermore, all sane people rely on Devel::SimpleTrace which makes any warning or die dump the stack. I believe some of the mop and moose set the stack level for Carp internally, and there might a problem with that. I still interested in your problem: your example doesn't demonstrate anything. -- Evan Carroll System Lord of the Internets http://www.evancarroll.com