Index: ChangeLog
from Damien Thivolle <damien(a)lrde.epita.fr>
* mlc/any.hh: Add missing header inclusion.
* mlc/box.hh: Add empty constructor for mlc::box.
any.hh | 9 +++++----
box.hh | 6 +++++-
2 files changed, 10 insertions(+), 5 deletions(-)
Index: mlc/any.hh
--- mlc/any.hh (revision 37)
+++ mlc/any.hh (working copy)
@@ -1,3 +1,4 @@
+vcs: warn: unknown method cat!
// Copyright (C) 2001, 2002, 2003, 2004, 2005 EPITA Research and Development Laboratory
//
// This file is part of the Olena Library. This library is free
@@ -29,9 +30,9 @@
#ifndef METALIC_ANY_HH
# define METALIC_ANY_HH
+# include <contract.hh>
-
// abbrev
#define any_mem(E) any <E, dispatch_policy::best_memory>
@@ -70,7 +71,7 @@
precondition(exact_ptr != 0);
return *exact_ptr;
}
-
+
/// Assignment (op=).
any& operator=(const any& rhs)
@@ -118,11 +119,11 @@
const E& exact() const {
return *(const E*)((const char*)this - exact_offset);
}
-
+
static const int exact_offset;
static const E exact_obj;
static const any_mem(E)& ref_exact_obj;
-
+
protected:
any() {}
any(E* exact_ptr_does_not_exist_in_this_version); // safety
Index: mlc/box.hh
--- mlc/box.hh (revision 37)
+++ mlc/box.hh (working copy)
@@ -29,7 +29,7 @@
# define METALIC_BOX_HH
-namespace mlc
+namespace mlc
{
template <class T>
@@ -39,6 +39,8 @@
ref(ref)
{}
+ box() {}
+
box(const box<T>& rhs) :
ref(rhs.ref)
{}
@@ -80,6 +82,8 @@
ref(const_cast<T&>(ref))
{}
+ box() {}
+
box(const box<T>& rhs) :
ref(const_cast<T&>(rhs.ref))
{}