my $handlers = { 'request' => sub { $self->_handler_set_object('request', @_ ); # got to here with a warn statement }, $response => sub { $self->_handler_set_object('response', @_ ); $self->_object_tree( $response, @_ ); # Got to Here, with a warn statement }, }; eval { $self->twig( XML::Twig->new( twig_handlers => $handlers )) }; croak 'ERROR: ' . $EVAL_ERROR if $EVAL_ERROR; # Got Here eval { $self->twig->parse( $self->get_xml ) }; # Cannot get to here croak 'ERROR: ' . $EVAL_ERROR . qq{\nXML: } . $self->get_xml if $EVAL_ERROR;