Commit 8b4beec4 authored by Roland Levillain's avatar Roland Levillain
Browse files

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.


git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@423 4aad255d-cdde-0310-9447-f3009e2ae8c0
parent eef3bcec
2006-03-14 Roland Levillain <roland@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.
2006-03-03 Thierry Geraud <theo@lrde.epita.fr>
New sub-project ('extended'; 'xtd' for short) and update.
......
## 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.
## Process this file through Automake to create Makefile.in -*- Makefile -*-
xtddir = $(includedir)/xtd
# FIXME: To be filled.
#nobase_xtd_HEADERS =
......@@ -67,6 +67,9 @@ namespace mlc
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;
};
/// \}
......
......@@ -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); \
\
......@@ -134,7 +131,7 @@
{ \
/** Set of vtypes associated with FROM_TYPE. */ \
typedef vtypes<category, from_type> types; \
/** Typedef in the current vtypes (maybe mlc::not_found). */ \
/** Typedef in the current vtypes (may be mlc::not_found). */ \
typedef mlc_internal_get_typedef(types, typedef_type) type; \
\
/** Implicit parent (i.e. super), if any. */ \
......@@ -203,8 +200,8 @@
{ \
/** 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 in the current vtypes (may be mlc::not_found). */ \
typedef mlc_ret(ext_type) type; \
\
/** Implicit parent (i.e. super), if any. */ \
typedef mlc_super(from_type) super; \
......
# include <iostream>
# include <mlc/typedef.hh>
# include <mlc/ret.hh>
struct yes
{
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment