https://svn.lrde.epita.fr/svn/oln/trunk
Index: ChangeLog
from Roland Levillain <roland(a)lrde.epita.fr>
Catch up with recent changes and fix some tests of Metalic.
* metalic/mlc/properties.hh (mlc_equip_namespace_with_properties):
Catch up with recent changes in typedef.hh/ret.hh.
Don't declare a local `ret' typedef; include mlc/ret.hh, and use
the `mlc_ret' macro instead.
* metalic/mlc/cmp.hh (eq_<T, T>): Solve ambiguous calls to
ensure().
* metalic/tests/ret.cc: Include mlc/ret.hh instead of
mlc/typedef.hh.
* extended/tests/Makefile.am (mlcdir, nobase_mlc_HEADERS): Remove.
(AM_CPPFLAGS): New.
* extended/xtd/Makefile.am: New file.
extended/tests/Makefile.am | 8 ++++++--
extended/xtd/Makefile.am | 6 ++++++
metalic/mlc/cmp.hh | 3 +++
metalic/mlc/properties.hh | 7 ++-----
metalic/tests/ret.cc | 2 +-
5 files changed, 18 insertions(+), 8 deletions(-)
Index: extended/xtd/Makefile.am
--- extended/xtd/Makefile.am (revision 0)
+++ extended/xtd/Makefile.am (revision 0)
@@ -0,0 +1,6 @@
+## Process this file through Automake to create Makefile.in -*- Makefile -*-
+
+xtddir = $(includedir)/xtd
+
+# FIXME: To be filled.
+#nobase_xtd_HEADERS =
Index: extended/tests/Makefile.am
--- extended/tests/Makefile.am (revision 422)
+++ extended/tests/Makefile.am (working copy)
@@ -1,4 +1,8 @@
## Process this file through Automake to create Makefile.in -*- Makefile -*-
-mlcdir = $(includedir)/xtd
-nobase_mlc_HEADERS = \
+AM_CPPFLAGS = -I$(top_srcdir)/extended
+# FIXME: Add
+#
+# AM_CXXFLAGS = $(CXXFLAGS_STRICT) $(CXXFLAGS_OPTIMIZE) -ggdb
+#
+# when oln.m4 is available in the distribution.
Index: metalic/tests/ret.cc
--- metalic/tests/ret.cc (revision 422)
+++ metalic/tests/ret.cc (working copy)
@@ -1,5 +1,5 @@
# include <iostream>
-# include <mlc/typedef.hh>
+# include <mlc/ret.hh>
struct yes
{
Index: metalic/mlc/properties.hh
--- metalic/mlc/properties.hh (revision 422)
+++ metalic/mlc/properties.hh (working copy)
@@ -35,6 +35,7 @@
# include <mlc/flags.hh>
# include <mlc/typedef.hh>
+# include <mlc/ret.hh>
# include <mlc/bool.hh>
# include <mlc/cmp.hh>
# include <mlc/if.hh>
@@ -56,10 +57,6 @@
/* Typedefs declarations. */ \
/* ----------------------- */ \
\
- /* FIXME: Should we use the `ret' typdef defined in the global */ \
- /* namespace instead ? (see at the end mlc/typedef.hh). */ \
- mlc_decl_typedef(ret); \
- \
/* Declare the ``uplink'' typedef (access to a pseudosuper class). */ \
mlc_decl_typedef(pseudosuper_type); \
\
@@ -204,7 +201,7 @@
/** Set of vtypes associated with FROM_TYPE. */ \
typedef ext_vtype<category, from_type, typedef_type> ext_type; \
/** Typedef in the current vtypes (maybe mlc::not_found). */ \
- typedef mlc_internal_get_typedef(ext_type, typedef_::ret) type; \
+ typedef mlc_ret(ext_type) type; \
\
/** Implicit parent (i.e. super), if any. */ \
typedef mlc_super(from_type) super; \
Index: metalic/mlc/cmp.hh
--- metalic/mlc/cmp.hh (revision 422)
+++ metalic/mlc/cmp.hh (working copy)
@@ -67,6 +67,9 @@
struct eq_ <T, T> : private assert_< is_not_value<T> >,
public true_
{
+ // Solve the ambiguity on ensure(), a static member function
+ // inherited both from true_ and assert_.
+ using true_::ensure;
};
/// \}