From 30e285ff89b7395190a1c46b8e62665f02d77083 Mon Sep 17 00:00:00 2001 From: Jens Alfke Date: Thu, 4 Aug 2016 16:35:45 -0700 Subject: [PATCH] Fixed link errors calling Exception::getErrorCode() getErrorCode() and getExtendedErrorCode()'s implementations were accidentally declared as inline in the .cpp file. This causes the compiler to not generate any code for them, resulting in link errors when a client calls them. Fixed by moving the implementations into the header, where they need to be if they're inline. --- include/SQLiteCpp/Exception.h | 8 ++++++-- src/Exception.cpp | 14 +------------- 2 files changed, 7 insertions(+), 15 deletions(-) diff --git a/include/SQLiteCpp/Exception.h b/include/SQLiteCpp/Exception.h index 07f296b..6fd92de 100644 --- a/include/SQLiteCpp/Exception.h +++ b/include/SQLiteCpp/Exception.h @@ -76,10 +76,14 @@ public: Exception(sqlite3* apSQLite, int ret); /// Return the result code (if any, otherwise -1). - int getErrorCode() const noexcept; // nothrow + int getErrorCode() const noexcept { // nothrow + return mErrcode; + } /// Return the extended numeric result code (if any, otherwise -1). - int getExtendedErrorCode() const noexcept; // nothrow + int getExtendedErrorCode() const noexcept { // nothrow + return mExtendedErrcode; + } /// Return a string, solely based on the error code const char* getErrorStr() const noexcept; // nothrow diff --git a/src/Exception.cpp b/src/Exception.cpp index 45bbe0d..c2f0304 100644 --- a/src/Exception.cpp +++ b/src/Exception.cpp @@ -44,20 +44,8 @@ Exception::Exception(sqlite3* apSQLite, int ret) : { } -// Return the result code (if any, otherwise -1). -inline int Exception::getErrorCode() const noexcept // nothrow -{ - return mErrcode; -} - -// Return the extended numeric result code (if any, otherwise -1). -inline int Exception::getExtendedErrorCode() const noexcept // nothrow -{ - return mExtendedErrcode; -} - // Return a string, solely based on the error code -inline const char* Exception::getErrorStr() const noexcept // nothrow +const char* Exception::getErrorStr() const noexcept // nothrow { return sqlite3_errstr(mErrcode); }