35#define static_type_info(T) \
37#define ptr_type_info(p) \
39#define ref_type_info(r) \
42#define same_type(T,r) \
43 (((r).get_info())->same(T::info()))
44#define sub_type(T,r) \
45 (T::info_obj.can_cast((r).get_info()) ? 1 : 0)
46#define ptr_cast(T,p) \
47 (T::info_obj.can_cast((p)->get_info()) \
48 ? 0 :bad_ref_cast(T::info(),(p)->get_info()), (T*)(p))
49#define ref_cast(T,r) \
50 (T::info_obj.can_cast((r).get_info()) \
51 ? 0 :bad_ref_cast(T::info(),(r).get_info()), T::self_cast(r))
52#define ref_cast_non_const(T,r) \
53 (T::info_obj.can_cast((r).get_info()) \
54 ? 0 :bad_ref_cast(T::info(),(r).get_info()), (T&)(r))
modelise une information de type pour les Objet_U