aboutsummaryrefslogtreecommitdiff
path: root/common/inheritance/polymorphism/test6.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'common/inheritance/polymorphism/test6.hxx')
-rw-r--r--common/inheritance/polymorphism/test6.hxx10
1 files changed, 10 insertions, 0 deletions
diff --git a/common/inheritance/polymorphism/test6.hxx b/common/inheritance/polymorphism/test6.hxx
index 1682b3f..c12b5f4 100644
--- a/common/inheritance/polymorphism/test6.hxx
+++ b/common/inheritance/polymorphism/test6.hxx
@@ -5,6 +5,8 @@
#ifndef TEST6_HXX
#define TEST6_HXX
+#include <common/config.hxx> // HAVE_CXX11
+
#include <string>
#include <memory>
@@ -16,7 +18,11 @@
#pragma db namespace table("t6_")
namespace test6
{
+#ifdef HAVE_CXX11
+ #pragma db object polymorphic pointer(std::unique_ptr)
+#else
#pragma db object polymorphic pointer(std::auto_ptr)
+#endif
struct root
{
virtual ~root () {}
@@ -55,7 +61,11 @@ namespace test6
unsigned long dnum;
std::string dstr;
+#ifdef HAVE_CXX11
+ std::unique_ptr<root> ptr;
+#else
std::auto_ptr<root> ptr;
+#endif
void
db_callback (odb::callback_event, odb::database&) const;