Simon Odou <simon(a)lrde.epita.fr> wrote:
{
E& exact() {
+# if defined __GNUC__ && __GNUC__ >= 3
+ return static_cast<E&>(*this);
+# else
return *(E*)((char*)this - exact_offset);
+# endif
}
const E& exact() const {
+# if defined __GNUC__ && __GNUC__ >= 3
+ return static_cast<const E&>(*this);
+# else
return *(const E*)((const char*)this - exact_offset);
+# endif
}
Vous n'avez pas déjà un header spécifique qui factorise les fonctionnalités de
gcc par version (du genre, la disponibilité de __attribute__ etc) ? C'est le
genre de trucs qui mériteraient d'y être. Ça prends vite le chemin de la
redondance sinon.
--
Didier Verna, didier(a)lrde.epita.fr,
http://www.lrde.epita.fr/~didier
EPITA / LRDE, 14-16 rue Voltaire Tel.+33 (1) 44 08 01 85
94276 Le Kremlin-Bicêtre, France Fax.+33 (1) 53 14 59 22 didier(a)xemacs.org