
https://svn.lrde.epita.fr/svn/oln/trunk Index: ChangeLog from 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. 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; }; /// \}