void IOTracePopStr(char* buffer,int size) { if (errorstack.empty()) { *buffer = 0; return; } strncpy(buffer,errorstack.top().c_str(),size); errorstack.pop(); }
void IOTraceOutput(std::ostream& os) { while (!errorstack.empty()) { os << errorstack.top().c_str() << std::endl; errorstack.pop(); } }
bool has_error() const { return m_code != 0 || !m_stack.empty(); }