Vincent Lefevre writes: > The GCC 4.1 manual says: > > 4.5 Integers > ============ > [...] Signed `>>' acts on negative numbers by sign extension. > > but nothing is said about past and future GCC implementations. So, > how can I test some implementation-defined features? For instance, > something like: > > #ifdef SOME_MACRO_DEFINED_BY_GCC_IF_RIGHT_SHIFT_IS_WITH_SIGN_EXTENSION > /* code that works only where signed `>>' acts on negative numbers by > sign extension */ > #else > /* fallback portable code (slower) */ > #endif Autoconf does this kind of thing. http://www.gnu.org/software/autoconf/ Andrew.