class SQLite_exception { int errno; std::string errmsg; public: /* Errors I get here: `_errno' cannot be used as a function anachronistic old style base class initializer unnamed initializer for `SQLite_exception', which has no base classes parse error before `;' token */ SQLite_exception(int _errno, const std::string &_errmsg) : errno(_errno), errmsg(_errmsg) { } friend std::ostream &operator<<(std::ostream &out, const SQLite_exception &exception) { out << exception.errmsg; if (errno) out << " [" << errno << "]"; out << std::endl; return out; } };