On 2005-03-22, Didier Verna <didier(a)lrde.epita.fr> wrote:
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.
Non on n'a pas ce header spécifique et oui on devrait !
Mais dans ce cas, comme l'indique le FIXME, il faut surtout écrire un test
dédié dans les autotools.
--
Simon Odou
simon(a)lrde.epita.fr