
19 Apr
2004
19 Apr
'04
10:43 a.m.
Akim Demaille wrote: > Patch illisible ! À renvoyer ! J'ai ajouté un espace dans le macros utilisant un argument comme paramètre de template. De base, prdiff n'affiche pas les lignes où uniquement un espace est ajouté. Index: integre/ChangeLog from Niels Van Vliet <niels@lrde.epita.fr> * ntg/real/optraits_builtin_int.hh: Add white space after variables of macros used as template parameters (ICC error). * ntg/real/typetraits_builtin_int.hh: Likewise. * ntg/core/internal/macros.hh: Likewise. * ntg/core/macros.hh: Likewise. Index: metalic/ChangeLog from Niels Van Vliet <niels@lrde.epita.fr> * mlc/type.hh: Add white space after variables of macros used as template parameters (ICC error). * mlc/array/1d.hh: Likewise. * mlc/array/2d.hh: Likewise. * mlc/array/3d.hh: Likewise. * mlc/optional.hh: Likewise. * mlc/is_a.hh: Likewise. Index: olena/ChangeLog from Niels Van Vliet <niels@lrde.epita.fr> * oln/arith/internal/opdecls.hh: Add white space after variables of macros used as template parameters (ICC error). * oln/morpho/watershed.hxx: Likewise. * oln/topo/dmap.hxx: Likewise. * oln/transforms/dwt.hh: Likewise. * oln/core/abstract/image.hh: Likewise. * oln/morpho/attributes.hh: Likewise. * oln/topo/tarjan/tarjan.hh: Likewise. Index: olena/oln/arith/internal/opdecls.hh --- olena/oln/arith/internal/opdecls.hh Mon, 15 Mar 2004 17:40:54 +0100 van-vl_n (oln/b/22_opdecls.hh 1.18 600) +++ olena/oln/arith/internal/opdecls.hh Tue, 13 Apr 2004 17:31:32 +0200 van-vl_n (oln/b/22_opdecls.hh 1.19 640) @@ -69,7 +69,7 @@ \ template <class T1, class T2 = T1> \ struct default_f_##OPNAME \ - : public f_##OPNAME< T1, T2, ntg_return_type(OPNAME, T1, T2) > \ + : public f_##OPNAME< T1, T2, ntg_return_type(OPNAME, T1, T2)> \ {} /* no ; */ @@ -136,7 +136,7 @@ ** \arg TYPE Type that can be used. */ # define oln_arith_declare_binfixedtypecst_functor_(OPNAME, OPCODE_CST, TYPE) \ - struct f_##OPNAME##_cst: std::unary_function<const TYPE, TYPE> \ + struct f_##OPNAME##_cst: std::unary_function<const TYPE, TYPE > \ { \ f_##OPNAME##_cst(TYPE cst) : cst_(cst) {} \ \ @@ -278,7 +278,7 @@ typename mute<I1, typename f_##OPNAME::result_type>::ret \ OPNAME(const abstract::image<I1>& input1, const abstract::image<I2>& input2) \ { \ - return apply2<f_##OPNAME>(input1, input2); \ + return apply2<f_##OPNAME >(input1, input2); \ } \ \ /* Same as above, plus conversion. */ \ @@ -342,7 +342,7 @@ typename mute<I, typename f_##OPNAME::result_type>::ret \ OPNAME(const abstract::image<I>& input1) \ { \ - return apply<f_##OPNAME>(input1); \ + return apply<f_##OPNAME >(input1); \ } \ \ /* Same as above, plus conversion. */ \ @@ -386,7 +386,7 @@ typename f_##OPNAME<oln_value_type(I1), oln_value_type(I1)>::result_type>::ret \ OPNAME(const abstract::image<I1>& input1, const abstract::image<I2>& input2) \ { \ - return apply2<f_##OPNAME>(input1, input2); \ + return apply2<f_##OPNAME >(input1, input2); \ } \ \ /* Same as above, plus conversion. */ \ Index: metalic/mlc/type.hh --- metalic/mlc/type.hh Mon, 09 Feb 2004 18:57:03 +0100 palma_g (oln/c/21_type.hh 1.28 600) +++ metalic/mlc/type.hh Tue, 13 Apr 2004 17:31:32 +0200 van-vl_n (oln/c/21_type.hh 1.29 640) @@ -1,4 +1,4 @@ -// Copyright (C) 2001, 2002, 2003 EPITA Research and Development Laboratory +// Copyright (C) 2001, 2002, 2003, 2004 EPITA Research and Development Laboratory // // This file is part of the Olena Library. This library is free // software; you can redistribute it and/or modify it under the terms @@ -239,10 +239,10 @@ // Return the exact virtual type of two given types (inheritance determination). -# define mlc_exact_vt_type(T, Exact) typename mlc::exact_vt<T, Exact>::ret -# define mlc_2_exact_vt_type(self, T, Exact) typename mlc::exact_vt<self<T, Exact>, Exact>::ret -# define mlc_exact_vt_type_(T, Exact) mlc::exact_vt<T, Exact>::ret -# define mlc_2_exact_vt_type_(self, T, Exact) mlc::exact_vt<self<T, Exact>, Exact>::ret +# define mlc_exact_vt_type(T, Exact) typename mlc::exact_vt<T, Exact >::ret +# define mlc_2_exact_vt_type(self, T, Exact) typename mlc::exact_vt<self<T, Exact >, Exact >::ret +# define mlc_exact_vt_type_(T, Exact) mlc::exact_vt<T, Exact >::ret +# define mlc_2_exact_vt_type_(self, T, Exact) mlc::exact_vt<self<T, Exact >, Exact >::ret namespace mlc { Index: metalic/mlc/array/1d.hh --- metalic/mlc/array/1d.hh Mon, 19 Jan 2004 18:52:05 +0100 astrid (oln/f/23_array1d.hh 1.11 600) +++ metalic/mlc/array/1d.hh Tue, 13 Apr 2004 17:31:32 +0200 van-vl_n (oln/f/23_array1d.hh 1.12 640) @@ -1,4 +1,4 @@ -// Copyright (C) 2001, 2002, 2003 EPITA Research and Development Laboratory +// Copyright (C) 2001, 2002, 2003, 2004 EPITA Research and Development Laboratory // // This file is part of the Olena Library. This library is free // software; you can redistribute it and/or modify it under the terms @@ -267,7 +267,7 @@ // returning a starter. # define array1d_starter(T) \ - static internal::array1d_start_<T> T##s_1d = internal::array1d_start_<T>() + static internal::array1d_start_<T > T##s_1d = internal::array1d_start_<T >() array1d_starter(int); // ints_1d array1d_starter(float); // floats_1d Index: metalic/mlc/array/2d.hh --- metalic/mlc/array/2d.hh Mon, 19 Jan 2004 18:52:05 +0100 astrid (oln/f/21_array2d.hh 1.11 600) +++ metalic/mlc/array/2d.hh Tue, 13 Apr 2004 17:31:32 +0200 van-vl_n (oln/f/21_array2d.hh 1.12 640) @@ -1,4 +1,4 @@ -// Copyright (C) 2001, 2002, 2003 EPITA Research and Development Laboratory +// Copyright (C) 2001, 2002, 2003, 2004 EPITA Research and Development Laboratory // // This file is part of the Olena Library. This library is free // software; you can redistribute it and/or modify it under the terms @@ -296,7 +296,7 @@ // returning a starter. # define array2d_starter(T) \ - static internal::array2d_start_<T> T##s_2d = internal::array2d_start_<T>() + static internal::array2d_start_<T > T##s_2d = internal::array2d_start_<T >() array2d_starter(int); // ints_2d array2d_starter(float); // floats_2d Index: metalic/mlc/array/3d.hh --- metalic/mlc/array/3d.hh Mon, 19 Jan 2004 18:52:05 +0100 astrid (oln/f/19_array3d.hh 1.12 600) +++ metalic/mlc/array/3d.hh Tue, 13 Apr 2004 17:31:32 +0200 van-vl_n (oln/f/19_array3d.hh 1.13 640) @@ -1,4 +1,4 @@ -// Copyright (C) 2001, 2002, 2003 EPITA Research and Development Laboratory +// Copyright (C) 2001, 2002, 2003, 2004 EPITA Research and Development Laboratory // // This file is part of the Olena Library. This library is free // software; you can redistribute it and/or modify it under the terms @@ -301,7 +301,7 @@ // returning a starter. # define array3d_starter(T) \ - static internal::array3d_start_<T> T##s_3d = internal::array3d_start_<T>() + static internal::array3d_start_<T > T##s_3d = internal::array3d_start_<T >() array3d_starter(int); // ints_3d array3d_starter(float); // floats_3d Index: metalic/mlc/optional.hh --- metalic/mlc/optional.hh Thu, 07 Aug 2003 02:37:23 +0200 burrus_n (oln/o/41_optional.h 1.7 600) +++ metalic/mlc/optional.hh Tue, 13 Apr 2004 17:31:32 +0200 van-vl_n (oln/o/41_optional.h 1.8 640) @@ -1,4 +1,4 @@ -// Copyright (C) 2001, 2002, 2003 EPITA Research and Development Laboratory +// Copyright (C) 2001, 2002, 2003, 2004 EPITA Research and Development Laboratory // // This file is part of the Olena Library. This library is free // software; you can redistribute it and/or modify it under the terms @@ -33,7 +33,7 @@ # if 0 -namespace mlc +namespace mlc { // This class is used as a static tag for specialization of certain @@ -54,40 +54,40 @@ // Optional is meant to enable optional static argument with variant // types. The 'Decl' argument must have a free template argument to // permit the substitution of the class 'none' to it when no - // argument is given. - // example: - // + // argument is given. + // example: + // // template <class U, class T> // void foo(U arg1, Optional(T& arg2)) // here T is free. - // {} + // {} // // Then, you can write: // foo(1); // T = none // foo(1, 2); // T = int // foo(1, "bar"); // T = char * -# define Optional(T, v) ((Option<T> v) = none()) +# define Optional(T, v) ((Option<T > v) = none()) // Depending on the presence of optional argument, we have different // specialization of the algorithm. Here are several helper classes // and macros. - + // Do nothing in the general case. template <class Behaviour, class OptionalArgument> struct optional_behavior { static inline void do_it() {} - + template <class T> - static inline void do_it(T) + static inline void do_it(T) {} template <class T, class U> - static inline void do_it(T, U) + static inline void do_it(T, U) {} template <class T, class U, class V> - static inline void do_it(T, U, V) + static inline void do_it(T, U, V) {} }; Index: metalic/mlc/is_a.hh --- metalic/mlc/is_a.hh Thu, 07 Aug 2003 02:37:23 +0200 burrus_n (oln/g/33_type.hh 1.12 600) +++ metalic/mlc/is_a.hh Tue, 13 Apr 2004 17:31:32 +0200 van-vl_n (oln/g/33_type.hh 1.13 640) @@ -1,4 +1,4 @@ -// Copyright (C) 2001, 2002, 2003 EPITA Research and Development Laboratory +// Copyright (C) 2001, 2002, 2003, 2004 EPITA Research and Development Laboratory // // This file is part of the Olena Library. This library is free // software; you can redistribute it and/or modify it under the terms @@ -32,24 +32,25 @@ # include <mlc/bool.hh> // private macro so do _not_ use it -# define is_a__check_result_ \ -sizeof(helper<T,U>::check( (T*) helper<T,U>::makeT() )) == sizeof(mlc::internal::yes_) +# define is_a__check_result_ \ +sizeof(helper<T ,U >::check( (T *) helper<T,U >::makeT() )) \ +== sizeof(mlc::internal::yes_) -namespace mlc +namespace mlc { - namespace internal + namespace internal { // // wrap // - // FIXME: This type is a workaround for g++-2.95 problem with implicit - // typename in <foo<T>::ret::dim>, + // FIXME: This type is a workaround for g++-2.95 problem with implicit + // typename in <foo<T>::ret::dim>, // write <wrap<typename foo<T>::ret>::dim instead. // - + template <class T> struct wrap : public T {}; } // internal @@ -70,7 +71,7 @@ // template_l_unsigned_class_g_class_ = 4 // ... }; - + template<unsigned id> struct desc { char dummy[id]; }; @@ -92,7 +93,7 @@ namespace internal { - + typedef char yes_; struct no_ { char dummy[2]; }; @@ -104,8 +105,8 @@ struct is_a_; // _class_ - - + + template<> struct is_a_< form::class_ > { @@ -118,14 +119,14 @@ static no_ check(...); static T* makeT(); }; - + template<class T, class U> struct check : public mlc::returns_bool_<( is_a__check_result_ )> { }; }; - + // template_l_class_g_class_ template<> @@ -176,17 +177,17 @@ } // end of mlc // private macros: do _not_ use them -# define is_a__2nd_is_meta(T,U) mlc::internal::is_a_< id_of_typeform(U) >::check<T, U> +# define is_a__2nd_is_meta(T,U) mlc::internal::is_a_< id_of_typeform(U) >::check<T, U > // client macros -# define id_of_typeform(T) sizeof(mlc::form::get<T>()) +# define id_of_typeform(T) sizeof(mlc::form::get<T >()) template <class T> struct id_ { typedef T ret; }; // FIXME: can we get rid of mlc::wrap ? -# define mlc_is_a(T, U) mlc::internal::wrap<typename mlc::internal::is_a_< id_of_typeform(U) >::check<T, U> > -# define mlc_is_a_(T, U) mlc::internal::wrap<mlc::internal::is_a_< id_of_typeform(U) >::check<T, U> > +# define mlc_is_a(T, U) mlc::internal::wrap<typename mlc::internal::is_a_< id_of_typeform(U) >::check<T, U > > +# define mlc_is_a_(T, U) mlc::internal::wrap<mlc::internal::is_a_< id_of_typeform(U) >::check<T, U > > #endif // ndef METALIC_IS_A_HH Index: olena/oln/morpho/watershed.hxx --- olena/oln/morpho/watershed.hxx Fri, 12 Mar 2004 13:29:59 +0100 palma_g (oln/47_watershed. 1.9.1.5.1.6 600) +++ olena/oln/morpho/watershed.hxx Tue, 13 Apr 2004 17:31:32 +0200 van-vl_n (oln/47_watershed. 1.9.1.5.1.7 640) @@ -40,11 +40,11 @@ /* GCC's optimizer is smart enough to compute these values at compile time and really use them as constants. That's great. */ # define oln_morpho_declare_soille_watershed_consts_(DestValue) \ - const DestValue mask = ntg::cast::force<DestValue>(ntg_max_val(DestValue) - 2); \ + const DestValue mask = ntg::cast::force<DestValue >(ntg_max_val(DestValue) - 2); \ const DestValue wshed = ntg_max_val(DestValue); \ - const DestValue init = ntg::cast::force<DestValue>(ntg_max_val(DestValue) - 1); \ - const DestValue inqueue = ntg::cast::force<DestValue>(ntg_max_val(DestValue) - 3); \ - const DestValue maxlevel = ntg::cast::force<DestValue>(inqueue - 1) /* no ; */ + const DestValue init = ntg::cast::force<DestValue >(ntg_max_val(DestValue) - 1); \ + const DestValue inqueue = ntg::cast::force<DestValue >(ntg_max_val(DestValue) - 3); \ + const DestValue maxlevel = ntg::cast::force<DestValue >(inqueue - 1) /* no ; */ namespace internal { Index: olena/oln/topo/dmap.hxx --- olena/oln/topo/dmap.hxx Fri, 23 Jan 2004 18:06:28 +0100 van-vl_n (oln/p/3_dmap.hxx 1.7.1.9 600) +++ olena/oln/topo/dmap.hxx Tue, 13 Apr 2004 17:31:32 +0200 van-vl_n (oln/p/3_dmap.hxx 1.7.1.10 640) @@ -1,4 +1,4 @@ -// Copyright (C) 2001, 2002, 2003 EPITA Research and Development Laboratory +// Copyright (C) 2001, 2002, 2003, 2004 EPITA Research and Development Laboratory // // This file is part of the Olena Library. This library is free // software; you can redistribute it and/or modify it under the terms @@ -50,7 +50,7 @@ {} template <class T> - coord + coord chamfer<T>::delta() const { coord d = fwd.delta(); @@ -132,15 +132,15 @@ inline const chamfer<int>& Name##_##I##_##J() \ { \ static const chamfer<int> tmp = \ - mk_chamfer_##D##x##D< I, J>(E); \ + mk_chamfer_##D##x##D< I, J >(E); \ return tmp; \ } -# define oln_topo_chamfer3_(Name, I, J, K, D, E) \ - inline const chamfer<int>& Name##_##I##_##J##_##K() \ +# define oln_topo_chamfer3_(Name, I, J, K, D, E) \ + inline const chamfer<int>& Name##_##I##_##J##_##K() \ { \ static const chamfer<int> tmp = \ - mk_chamfer_##D##x##D< I, J, K>(E); \ + mk_chamfer_##D##x##D< I, J, K >(E); \ return tmp; \ } @@ -210,7 +210,7 @@ template <class T, class T2> template <class V> - void + void dmap<T, T2>::compute(const image2d<V>& input, float infty) { Index: olena/oln/transforms/dwt.hh --- olena/oln/transforms/dwt.hh Fri, 02 Apr 2004 18:35:36 +0200 van-vl_n (oln/i/35_dwt.hh 1.2.1.4.1.13 600) +++ olena/oln/transforms/dwt.hh Tue, 13 Apr 2004 17:31:32 +0200 van-vl_n (oln/i/35_dwt.hh 1.2.1.4.1.14 640) @@ -49,7 +49,7 @@ // macros used to define all the wavelets coefficients # define Wavelet_coeffs_definition(Name, Type, Size) \ - struct Name : public oln::internal::wavelet_coeffs_<Type, Size, Name> \ + struct Name : public oln::internal::wavelet_coeffs_<Type, Size, Name > \ { \ Name() Index: integre/ntg/real/optraits_builtin_int.hh --- integre/ntg/real/optraits_builtin_int.hh Thu, 27 Nov 2003 11:26:27 +0100 burrus_n (oln/g/18_optraits_b 1.6.1.8.1.1 600) +++ integre/ntg/real/optraits_builtin_int.hh Tue, 13 Apr 2004 17:31:32 +0200 van-vl_n (oln/g/18_optraits_b 1.6.1.8.1.2 640) @@ -1,4 +1,4 @@ -// Copyright (C) 2001, 2002, 2003 EPITA Research and Development Laboratory +// Copyright (C) 2001, 2002, 2003, 2004 EPITA Research and Development Laboratory // // This file is part of the Olena Library. This library is free // software; you can redistribute it and/or modify it under the terms @@ -47,7 +47,7 @@ # define OPTRAITS_BUILTIN_INT_U(Name, Max) \ template <> \ - struct optraits<Name> : public optraits<uint_value<Name> > \ + struct optraits<Name > : public optraits<uint_value<Name > > \ { \ static Name max() { return Max; } \ static std::string name() { return std::string(#Name); } \ @@ -55,7 +55,7 @@ # define OPTRAITS_BUILTIN_INT_S(Name, Min, Max) \ template <> \ - struct optraits<Name> : public optraits<sint_value<Name> > \ + struct optraits<Name > : public optraits<sint_value<Name > > \ { \ static Name min() { return Min; } \ static Name max() { return Max; } \ @@ -71,16 +71,16 @@ called when there is an operator_xxx_traits defined, else builtin are converted into oln type. */ - + OPTRAITS_BUILTIN_INT_U(unsigned long, ULONG_MAX); OPTRAITS_BUILTIN_INT_U(unsigned int, UINT_MAX); OPTRAITS_BUILTIN_INT_U(unsigned short, USHRT_MAX); OPTRAITS_BUILTIN_INT_U(unsigned char, UCHAR_MAX); - + OPTRAITS_BUILTIN_INT_S(signed long, LONG_MIN, LONG_MAX); OPTRAITS_BUILTIN_INT_S(signed int, INT_MIN, INT_MAX); OPTRAITS_BUILTIN_INT_S(signed short, SHRT_MIN, SHRT_MAX); - // char is not the same as signed char. + // char is not the same as signed char. OPTRAITS_BUILTIN_INT_S(signed char, CHAR_MIN, CHAR_MAX); // FIXME: whether char is signed or not is implementation defined. OPTRAITS_BUILTIN_INT_S(char, CHAR_MIN, CHAR_MAX); Index: integre/ntg/real/typetraits_builtin_int.hh --- integre/ntg/real/typetraits_builtin_int.hh Thu, 27 Nov 2003 11:26:27 +0100 burrus_n (oln/g/3_typetraits 1.7.1.11.1.1 600) +++ integre/ntg/real/typetraits_builtin_int.hh Tue, 13 Apr 2004 17:31:32 +0200 van-vl_n (oln/g/3_typetraits 1.7.1.11.1.2 640) @@ -1,4 +1,4 @@ -// Copyright (C) 2002, 2003 EPITA Research and Development Laboratory +// Copyright (C) 2002, 2003, 2004 EPITA Research and Development Laboratory // // This file is part of the Olena Library. This library is free // software; you can redistribute it and/or modify it under the terms @@ -38,15 +38,15 @@ # define TYPETRAITS_BUILTIN_INT(Name, Value) \ template<> \ - struct typetraits<Name> : public typetraits<Value<Name> > \ + struct typetraits<Name> : public typetraits<Value<Name > > \ { \ typedef Name self; \ - typedef builtin::to_ntg<Name>::ret ntg_type; \ - typedef builtin::abstract_trait<Name>::ret abstract_type; \ + typedef builtin::to_ntg<Name >::ret ntg_type; \ + typedef builtin::abstract_trait<Name >::ret abstract_type; \ template <class E> \ struct build_value_type \ { \ - typedef typename builtin::value_type<Name, E>::ret ret; \ + typedef typename builtin::value_type<Name, E >::ret ret; \ }; \ \ typedef optraits<self> optraits; \ @@ -55,14 +55,14 @@ \ typedef self base_type; \ typedef self storage_type; \ - typedef builtin::signed_trait<Name>::ret signed_type; \ - typedef builtin::unsigned_trait<Name>::ret unsigned_type; \ - typedef builtin::cumul_trait<Name>::ret cumul_type; \ - typedef builtin::largest_trait<Name>::ret largest_type; \ - typedef builtin::signed_largest_trait<Name>::ret signed_largest_type; \ - typedef builtin::signed_cumul_trait<Name>::ret signed_cumul_type; \ - typedef builtin::unsigned_largest_trait<Name>::ret unsigned_largest_type; \ - typedef builtin::unsigned_cumul_trait<Name>::ret unsigned_cumul_type; \ + typedef builtin::signed_trait<Name >::ret signed_type; \ + typedef builtin::unsigned_trait<Name >::ret unsigned_type; \ + typedef builtin::cumul_trait<Name >::ret cumul_type; \ + typedef builtin::largest_trait<Name >::ret largest_type; \ + typedef builtin::signed_largest_trait<Name >::ret signed_largest_type; \ + typedef builtin::signed_cumul_trait<Name >::ret signed_cumul_type; \ + typedef builtin::unsigned_largest_trait<Name >::ret unsigned_largest_type; \ + typedef builtin::unsigned_cumul_trait<Name >::ret unsigned_cumul_type; \ typedef self integer_type; \ }; @@ -112,7 +112,7 @@ template <class T> struct signed_largest_trait { typedef signed int ret; }; template <> struct signed_largest_trait<unsigned long> { typedef signed long ret; }; - + template <class T> struct signed_cumul_trait { typedef signed int ret; }; template <> struct signed_cumul_trait<unsigned long> { typedef signed long ret; }; @@ -123,7 +123,7 @@ template <class T> struct unsigned_largest_trait { typedef unsigned int ret; }; template <> struct unsigned_largest_trait< signed long> { typedef unsigned long ret; }; - + template <class T> struct unsigned_cumul_trait { typedef unsigned int ret; }; template <> struct unsigned_cumul_trait<signed long> { typedef unsigned long ret; }; @@ -155,10 +155,10 @@ TYPETRAITS_BUILTIN_INT(unsigned long, uint_value) TYPETRAITS_BUILTIN_INT(signed long, sint_value) - + TYPETRAITS_BUILTIN_INT(unsigned int, uint_value) TYPETRAITS_BUILTIN_INT(signed int, sint_value) - + TYPETRAITS_BUILTIN_INT(unsigned short, uint_value) TYPETRAITS_BUILTIN_INT(signed short, sint_value) Index: integre/ntg/core/internal/macros.hh --- integre/ntg/core/internal/macros.hh Tue, 13 May 2003 21:32:45 +0200 burrus_n (oln/s/17_macros.hh 1.2 600) +++ integre/ntg/core/internal/macros.hh Tue, 13 Apr 2004 17:31:32 +0200 van-vl_n (oln/s/17_macros.hh 1.3 640) @@ -1,4 +1,4 @@ -// Copyright (C) 2001, 2002, 2003 EPITA Research and Development Laboratory +// Copyright (C) 2001, 2002, 2003, 2004 EPITA Research and Development Laboratory // // This file is part of the Olena Library. This library is free // software; you can redistribute it and/or modify it under the terms @@ -43,45 +43,45 @@ */ # define ntgi_storage_type(T) \ -typename ntg::internal::typetraits<T>::storage_type +typename ntg::internal::typetraits< T >::storage_type # define ntgi_abstract_type(T) \ -typename ntg::internal::typetraits<T>::abstract_type +typename ntg::internal::typetraits< T >::abstract_type # define ntgi_optraits_type(T) \ -typename ntg::internal::typetraits<T>::optraits_type +typename ntg::internal::typetraits< T >::optraits_type # define ntgi_behavior_type(T) \ -typename ntg::internal::typetraits<T>::behavior_type +typename ntg::internal::typetraits< T >::behavior_type # define ntgi_base_type(T) \ -typename ntg::internal::typetraits<T>::base_type +typename ntg::internal::typetraits< T >::base_type # define ntgi_signed_type(T) \ -typename ntg::internal::typetraits<T>::signed_type +typename ntg::internal::typetraits< T >::signed_type # define ntgi_unsigned_type(T) \ -typename ntg::internal::typetraits<T>::unsigned_type +typename ntg::internal::typetraits< T >::unsigned_type # define ntgi_cumul_type(T) \ -typename ntg::internal::typetraits<T>::cumul_type +typename ntg::internal::typetraits< T >::cumul_type # define ntgi_largest_type(T) \ -typename ntg::internal::typetraits<T>::largest_type +typename ntg::internal::typetraits< T >::largest_type # define ntgi_signed_largest_type(T) \ -typename ntg::internal::typetraits<T>::signed_largest_type +typename ntg::internal::typetraits< T >::signed_largest_type # define ntgi_signed_cumul_type(T) \ -typename ntg::internal::typetraits<T>::signed_cumul_type +typename ntg::internal::typetraits< T >::signed_cumul_type # define ntgi_unsigned_largest_type(T) \ -typename ntg::internal::typetraits<T>::unsigned_largest_type +typename ntg::internal::typetraits< T >::unsigned_largest_type # define ntgi_unsigned_cumul_type(T) \ -typename ntg::internal::typetraits<T>::unsigned_cumul_type +typename ntg::internal::typetraits< T >::unsigned_cumul_type # define ntgi_integer_type(T) \ -typename ntg::internal::typetraits<T>::integer_type +typename ntg::internal::typetraits< T >::integer_type #endif // !NTG_CORE_INTERNAL_MACROS_HH Index: integre/ntg/core/macros.hh --- integre/ntg/core/macros.hh Fri, 26 Mar 2004 20:56:28 +0100 van-vl_n (oln/s/19_macros.hh 1.11 600) +++ integre/ntg/core/macros.hh Tue, 13 Apr 2004 17:31:32 +0200 van-vl_n (oln/s/19_macros.hh 1.12 640) @@ -32,8 +32,8 @@ | casts | `------*/ -# define ntg_type(T) typename ntg::type_traits<T>::ntg_type -# define ntg_type_(T) typename ntg::type_traits<T>::ntg_type +# define ntg_type(T) typename ntg::type_traits< T >::ntg_type +# define ntg_type_(T) typename ntg::type_traits< T >::ntg_type # define ntg_cast(Val) ntg::to_ntg(Val) # define ntg_signed_cast(Val) ntg::to_signed_ntg(Val) @@ -42,106 +42,106 @@ | type checking | `--------------*/ -# define ntg_is_a(T, U) mlc_is_a(typename ntg::type_traits<T>::abstract_type, U) -# define ntg_is_a_(T, U) mlc_is_a_(ntg::type_traits<T>::abstract_type, U) +# define ntg_is_a(T, U) mlc_is_a(typename ntg::type_traits< T >::abstract_type, U) +# define ntg_is_a_(T, U) mlc_is_a_(ntg::type_traits< T >::abstract_type, U) /*----------------. | types accessors | `----------------*/ -# define ntg_abstract_type(T) typename ntg::type_traits<T>::abstract_type -# define ntg_abstract_type_(T) ntg::type_traits<T>::abstract_type +# define ntg_abstract_type(T) typename ntg::type_traits< T >::abstract_type +# define ntg_abstract_type_(T) ntg::type_traits< T >::abstract_type -# define ntg_storage_type(T) typename ntg::type_traits<T>::storage_type -# define ntg_storage_type_(T) ntg::type_traits<T>::storage_type +# define ntg_storage_type(T) typename ntg::type_traits< T >::storage_type +# define ntg_storage_type_(T) ntg::type_traits< T >::storage_type -# define ntg_base_type(T) typename ntg::type_traits<T>::base_type -# define ntg_base_type_(T) ntg::type_traits<T>::base_type +# define ntg_base_type(T) typename ntg::type_traits< T >::base_type +# define ntg_base_type_(T) ntg::type_traits< T >::base_type -# define ntg_signed_type(T) typename ntg::type_traits<T>::signed_type -# define ntg_signed_type_(T) ntg::type_traits<T>::signed_type +# define ntg_signed_type(T) typename ntg::type_traits< T >::signed_type +# define ntg_signed_type_(T) ntg::type_traits< T >::signed_type -# define ntg_unsigned_type(T) typename ntg::type_traits<T>::unsigned_type -# define ntg_unsigned_type_(T) ntg::type_traits<T>::unsigned_type +# define ntg_unsigned_type(T) typename ntg::type_traits< T >::unsigned_type +# define ntg_unsigned_type_(T) ntg::type_traits< T >::unsigned_type -# define ntg_integer_type(T) typename ntg::type_traits<T>::integer_type -# define ntg_integer_type_(T) ntg::type_traits<T>::integer_type +# define ntg_integer_type(T) typename ntg::type_traits< T >::integer_type +# define ntg_integer_type_(T) ntg::type_traits< T >::integer_type -# define ntg_cumul_type(T) typename ntg::type_traits<T>::cumul_type -# define ntg_cumul_type_(T) ntg::type_traits<T>::cumul_type +# define ntg_cumul_type(T) typename ntg::type_traits< T >::cumul_type +# define ntg_cumul_type_(T) ntg::type_traits< T >::cumul_type # define ntg_signed_cumul_type(T) \ - typename ntg::type_traits<T>::signed_cumul_type -# define ntg_signed_cumul_type_(T) ntg::type_traits<T>::signed_cumul_type + typename ntg::type_traits< T >::signed_cumul_type +# define ntg_signed_cumul_type_(T) ntg::type_traits< T >::signed_cumul_type # define ntg_unsigned_cumul_type(T) \ - typename ntg::type_traits<T>::unsigned_cumul_type -# define ntg_unsigned_cumul_type_(T) ntg::type_traits<T>::unsigned_cumul_type + typename ntg::type_traits< T >::unsigned_cumul_type +# define ntg_unsigned_cumul_type_(T) ntg::type_traits< T >::unsigned_cumul_type -# define ntg_largest_type(T) typename ntg::type_traits<T>::largest_type -# define ntg_largest_type_(T) ntg::type_traits<T>::largest_type +# define ntg_largest_type(T) typename ntg::type_traits< T >::largest_type +# define ntg_largest_type_(T) ntg::type_traits< T >::largest_type # define ntg_signed_largest_type(T) \ - typename ntg::type_traits<T>::signed_largest_type -# define ntg_signed_largest_type_(T) ntg::type_traits<T>::signed_largest_type + typename ntg::type_traits< T >::signed_largest_type +# define ntg_signed_largest_type_(T) ntg::type_traits< T >::signed_largest_type # define ntg_unsigned_largest_type(T) \ - typename ntg::type_traits<T>::unsigned_largest_type + typename ntg::type_traits< T >::unsigned_largest_type # define ntg_unsigned_largest_type_(T) \ - ntg::type_traits<T>::unsigned_largest_type + ntg::type_traits< T >::unsigned_largest_type # define ntg_comp_type(T) \ - typename ntg::type_traits<T>::comp_type + typename ntg::type_traits< T >::comp_type # define ntg_comp_type_(T) \ - ntg::type_traits<T>::comp_type + ntg::type_traits< T >::comp_type -# define ntg_unsafe_type(T) typename ntg::type_traits<T>::unsafe_type -# define ntg_unsafe_type_(T) ntg::type_traits<T>::unsafe_type +# define ntg_unsafe_type(T) typename ntg::type_traits< T >::unsafe_type +# define ntg_unsafe_type_(T) ntg::type_traits< T >::unsafe_type /*-----------------. | values accessors | `-----------------*/ -# define ntg_zero_val(T) ntg::type_traits<T>::zero() +# define ntg_zero_val(T) ntg::type_traits< T >::zero() -# define ntg_unit_val(T) ntg::type_traits<T>::unit() +# define ntg_unit_val(T) ntg::type_traits< T >::unit() -# define ntg_max_val(T) ntg::type_traits<T>::max() +# define ntg_max_val(T) ntg::type_traits< T >::max() -# define ntg_min_val(T) ntg::type_traits<T>::min() +# define ntg_min_val(T) ntg::type_traits< T >::min() -# define ntg_inf_val(T) ntg::type_traits<T>::inf() +# define ntg_inf_val(T) ntg::type_traits< T >::inf() -# define ntg_sup_val(T) ntg::type_traits<T>::sup() +# define ntg_sup_val(T) ntg::type_traits< T >::sup() -# define ntg_max_print_width(T) ntg::type_traits<T>::max_print_width() +# define ntg_max_print_width(T) ntg::type_traits< T >::max_print_width() -# define ntg_nb_comp(T) ntg::type_traits<T>::nb_comp +# define ntg_nb_comp(T) ntg::type_traits< T >::nb_comp /*--------------------------. | operator traits accessors | `--------------------------*/ # define ntg_return_type(Op, T1, T2) \ - typename ntg::internal::deduce_from_traits<ntg::internal::operator_##Op, T1, T2>::ret + typename ntg::internal::deduce_from_traits<ntg::internal::operator_##Op , T1, T2 >::ret # define ntg_return_type_(Op, T1, T2) \ - ntg::internal::deduce_from_traits<ntg::internal::operator_##Op, T1, T2>::ret + ntg::internal::deduce_from_traits<ntg::internal::operator_##Op, T1, T2 >::ret # define ntg_deduced_traits_type(Op, T1, T2) \ - typename ntg::internal::deduce_from_traits<ntg::internal::operator_##Op, T1, T2> + typename ntg::internal::deduce_from_traits<ntg::internal::operator_##Op, T1, T2 > # define ntg_deduced_traits_type_(Op, T1, T2) \ - ntg::internal::deduce_from_traits<ntg::internal::operator_##Op, T1, T2> + ntg::internal::deduce_from_traits<ntg::internal::operator_##Op, T1, T2 > # define ntg_impl_type(Op, T1, T2) \ - typename ntg::internal::deduce_from_traits<ntg::internal::operator_##Op, T1, T2>::impl + typename ntg::internal::deduce_from_traits<ntg::internal::operator_##Op, T1, T2 >::impl # define ntg_impl_type_(Op, T1, T2) \ - ntg::internal::deduce_from_traits<ntg::internal::operator_##Op, T1, T2>::impl + ntg::internal::deduce_from_traits<ntg::internal::operator_##Op, T1, T2 >::impl /*----------. | utilities | `----------*/ -# define ntg_name(T) ntg::type_traits<T>::name() +# define ntg_name(T) ntg::type_traits< T >::name() // FIXME: reimplement when variadic macros will be allowed. # define ntg_build_value_type(Type) \ @@ -152,13 +152,13 @@ } // FIXME: reimplement when variadic macros will be allowed. -# define ntg_get_value_type(T, E) ntg::type_traits<T>::build_value_type<E> +# define ntg_get_value_type(T, E) ntg::type_traits< T >::build_value_type<E > /* ----. | Misc | `-----*/ -#define ntg_nbits(T) ntg::internal::typetraits<T>::size +#define ntg_nbits(T) ntg::internal::typetraits< T >::size /*! Return the number of components of T if T is vectorial. @@ -192,7 +192,7 @@ ntg_is_a(A, ntg::non_vectorial)::ret, \ ntg_is_a(B, ntg::non_vectorial), \ mlc::eq<ntg_if_vectorial_nb_comp(A), \ - ntg_if_vectorial_nb_comp(B)> >::ret + ntg_if_vectorial_nb_comp(B) > >::ret /*! Same as \a ntg_compare_nb_comp but without 'typename' ** @@ -203,6 +203,6 @@ ntg_is_a_(A, ntg::non_vectorial)::ret, \ ntg_is_a_(B, ntg::non_vectorial), \ mlc::eq<ntg_if_vectorial_nb_comp_(A), \ - ntg_if_vectorial_nb_comp_(B)> >::ret + ntg_if_vectorial_nb_comp_(B) > >::ret #endif // !NTG_CORE_MACROS_HH Index: olena/oln/core/abstract/image.hh --- olena/oln/core/abstract/image.hh Mon, 12 Apr 2004 12:56:30 +0200 van-vl_n (oln/t/25_image.hh 1.31 600) +++ olena/oln/core/abstract/image.hh Tue, 13 Apr 2004 17:31:32 +0200 van-vl_n (oln/t/25_image.hh 1.32 640) @@ -341,7 +341,7 @@ mlc_exact_type_(ImgType)::value_type # define oln_concrete_type(ImgType) \ -typename oln::mute<ImgType>::ret +typename oln::mute<ImgType >::ret # define oln_exact_type(ImgType) \ mlc_exact_type(ImgType) Index: olena/oln/morpho/attributes.hh --- olena/oln/morpho/attributes.hh Wed, 31 Mar 2004 19:11:41 +0200 palma_g (oln/j/45_attributes 1.12 600) +++ olena/oln/morpho/attributes.hh Tue, 13 Apr 2004 17:31:32 +0200 van-vl_n (oln/j/45_attributes 1.13 644) @@ -33,13 +33,13 @@ # include <oln/morpho/environments.hh> // attribute dedicated macros -# define attr_lambda_type(T) typename oln::morpho::attr::attr_traits<T>::lambda_type -# define attr_env_type(T) typename oln::morpho::attr::attr_traits<T>::env_type -# define attr_value_type(T) typename oln::morpho::attr::attr_traits<T>::value_type - -# define attr_lambda_type_(T) oln::morpho::attr::attr_traits<T>::lambda_type -# define attr_env_type_(T) oln::morpho::attr::attr_traits<T>::env_type -# define attr_value_type_(T) oln::morpho::attr::attr_traits<T>::value_type +# define attr_lambda_type(T) typename oln::morpho::attr::attr_traits< T >::lambda_type +# define attr_env_type(T) typename oln::morpho::attr::attr_traits< T >::env_type +# define attr_value_type(T) typename oln::morpho::attr::attr_traits< T >::value_type + +# define attr_lambda_type_(T) oln::morpho::attr::attr_traits< T >::lambda_type +# define attr_env_type_(T) oln::morpho::attr::attr_traits< T >::env_type +# define attr_value_type_(T) oln::morpho::attr::attr_traits< T >::value_type # define attr_type_decl(self_type) \ Index: olena/oln/topo/tarjan/tarjan.hh --- olena/oln/topo/tarjan/tarjan.hh Fri, 02 Apr 2004 16:53:54 +0200 palma_g (oln/m/47_tarjan.hh 1.2 600) +++ olena/oln/topo/tarjan/tarjan.hh Tue, 13 Apr 2004 17:31:32 +0200 van-vl_n (oln/m/47_tarjan.hh 1.3 644) @@ -30,9 +30,9 @@ # include <oln/basics.hh> // Macros for extract information on tarjan algorithms. -# define oln_tarjan_input_type(T) typename oln::topo::tarjan::tarjan_traits<T>::input_type -# define oln_tarjan_output_type(T) typename oln::topo::tarjan::tarjan_traits<T>::output_type -# define oln_tarjan_attr_type(T) typename oln::topo::tarjan::tarjan_traits<T>::attr_type +# define oln_tarjan_input_type(T) typename oln::topo::tarjan::tarjan_traits<T >::input_type +# define oln_tarjan_output_type(T) typename oln::topo::tarjan::tarjan_traits<T >::output_type +# define oln_tarjan_attr_type(T) typename oln::topo::tarjan::tarjan_traits<T >::attr_type // # define oln_tarjan_input_type(T) typename oln::topo::tarjan::tarjan_traits<mlc_exact_type(T)>::input_type