Make the default SQLiteError constructor public

Otherwise the clang builds fail because the constructor of `SQLiteBusy`
inherits it, `SQLiteError::_throw` tries to call it, which fails.

Strangely, gcc works fine with it. Not sure what the correct behavior is
and who is buggy here, but either way, making it public is at the worst
a reasonable workaround
This commit is contained in:
Théophane Hufschmitt 2022-04-21 09:40:55 +02:00
parent 9345b4e9ca
commit e7d79c7861

View file

@ -106,10 +106,10 @@ struct SQLiteError : Error
throw_(db, hintfmt(fs, args...)); throw_(db, hintfmt(fs, args...));
} }
protected:
SQLiteError(const char *path, int errNo, int extendedErrNo, hintformat && hf); SQLiteError(const char *path, int errNo, int extendedErrNo, hintformat && hf);
protected:
template<typename... Args> template<typename... Args>
SQLiteError(const char *path, int errNo, int extendedErrNo, const std::string & fs, const Args & ... args) SQLiteError(const char *path, int errNo, int extendedErrNo, const std::string & fs, const Args & ... args)
: SQLiteError(path, errNo, extendedErrNo, hintfmt(fs, args...)) : SQLiteError(path, errNo, extendedErrNo, hintfmt(fs, args...))