2006-09-27 Thierry GERAUD <theo(a)tegucigalpa.lrde.epita.fr>
Enforce safety in some SCOOP tools.
* stc/scoop.hh (stc_set_nth_super, stc_set_super): Add
"end of semicolon" safety.
(stc_virtual_typedef): Use oln_check_type_of instead of
oln_type_of.
Index: stc/scoop.hh
===================================================================
--- stc/scoop.hh (revision 579)
+++ stc/scoop.hh (working copy)
@@ -900,7 +900,8 @@
struct set_super_type< Type, N > \
{ \
typedef Super ret; \
- };
+ }; \
+ struct e_n_d__w_i_t_h___s_e_m_i_c_o_l_o_n
// Shortcut.
#define stc_set_super(Type, Super) \
@@ -957,8 +958,10 @@
struct set_pseudosuper_type<Type> \
{ \
typedef PseudoSuper ret; \
- }
+ }; \
+ struct e_n_d__w_i_t_h___s_e_m_i_c_o_l_o_n
+
/// \def Get the pseudosuper class of Type (version to be used inside a
/// template).
# define stc_get_pseudosuper(Type) \
@@ -1042,7 +1045,7 @@
/// for details). Warning: this macro assumes that the exact type
/// parameter is named 'E'.
#define stc_virtual_typedef(Typedef) \
- typedef oln_type_of(E, Typedef) Typedef
+ typedef oln_check_type_of(E, Typedef) Typedef
#endif // ! STATIC_SCOOP_HH