[eluser]jeephnx[/eluser]
I had the same problem. Found if I load the class 'form_validation' in the constructor then $this->_error_messages goes out of scope and is not available when required by $this->_execute(). If I load the class in the function thats actually doing the work then it goes into scope. However after reading this thread I loaded the class in the autoload array and it does seem to put _error_messages in scope. Strange.
[eluser]verynewtothis[/eluser]
I faced the same issue... loading form_validation globally (inside a constructor) broke the custom
validation. It seems that the problem only lies with PHP4 versions (works with PHP5)..