diff -Naur soci-3.2.3.org/CMakeLists.txt soci-3.2.3/CMakeLists.txt
--- soci-3.2.3.org/CMakeLists.txt 2015-04-09 00:39:00.000000000 +0200
+++ soci-3.2.3/CMakeLists.txt 2017-01-14 01:02:20.417016971 +0100
@@ -39,6 +39,10 @@
include(SociSystemInfo)
include(SociConfig)
+if(CMAKE_COMPILER_IS_GNUCXX)
+ add_definitions(-std=gnu++0x)
+endif()
+
boost_report_value(SOCI_PLATFORM_NAME)
boost_report_value(SOCI_COMPILER_NAME)
diff -Naur soci-3.2.3.org/core/rowset.h soci-3.2.3/core/rowset.h
--- soci-3.2.3.org/core/rowset.h 2015-04-08 22:32:00.000000000 +0200
+++ soci-3.2.3/core/rowset.h 2017-01-14 01:02:20.418016969 +0100
@@ -154,8 +154,8 @@
unsigned int refs_;
- const std::auto_ptr<statement> st_;
- const std::auto_ptr<T> define_;
+ const std::unique_ptr<statement> st_;
+ const std::unique_ptr<T> define_;
// Non-copyable
rowset_impl(rowset_impl const &);
diff -Naur soci-3.2.3.org/core/session.cpp soci-3.2.3/core/session.cpp
--- soci-3.2.3.org/core/session.cpp 2015-04-08 22:28:14.000000000 +0200
+++ soci-3.2.3/core/session.cpp 2017-01-14 01:02:20.419016966 +0100
@@ -235,11 +235,11 @@
}
void session::set_query_transformation_(
- std::auto_ptr<details::query_transformation_function> qtf)
+ std::unique_ptr<details::query_transformation_function> qtf)
{
if (isFromPool_)
{
- pool_->at(poolPosition_).set_query_transformation_(qtf);
+ pool_->at(poolPosition_).set_query_transformation_(std::move(qtf));
}
else
{
diff -Naur soci-3.2.3.org/core/session.h soci-3.2.3/core/session.h
--- soci-3.2.3.org/core/session.h 2015-04-08 22:32:00.000000000 +0200
+++ soci-3.2.3/core/session.h 2017-01-14 01:05:19.044639113 +0100
@@ -40,7 +40,7 @@
{
private:
- void set_query_transformation_(std::auto_ptr<details::query_transformation_function> qtf);
+ void set_query_transformation_(std::unique_ptr<details::query_transformation_function> qtf);
public:
session();
@@ -77,8 +77,8 @@
template <typename T>
void set_query_transformation(T callback)
{
- std::auto_ptr<details::query_transformation_function> qtf(new details::query_transformation<T>(callback));
- set_query_transformation_(qtf);
+ std::unique_ptr<details::query_transformation_function> qtf(new details::query_transformation<T>(callback));
+ set_query_transformation_(std::move(qtf));
assert(qtf.get() == NULL);
}
diff -Naur soci-3.2.3.org/core/test/common-tests.h soci-3.2.3/core/test/common-tests.h
--- soci-3.2.3.org/core/test/common-tests.h 2015-04-09 00:39:01.000000000 +0200
+++ soci-3.2.3/core/test/common-tests.h 2017-01-14 01:02:20.421016962 +0100
@@ -350,7 +350,7 @@
backend_factory const &backEndFactory_;
std::string const connectString_;
-typedef std::auto_ptr<table_creator_base> auto_table_creator;
+typedef std::unique_ptr<table_creator_base> auto_table_creator;
void test0()
{