On 25 May 2011 07:44, Patrick Horgan wrote: > I'm using the following in a header that uses typeof and needs to build > in code that builds with -std=c++0x or the default -std=c++98. Can I > leave it and forget it, or will eventually the compiler's use of c++0x > features no longer be experimental? How do I future proof it? > > #ifdef __GXX_EXPERIMENTAL_CXX0X__ > #define typeof decltype > #endif Yes it will go away at some point. The portable way to detect C++0x support is: #if __cplusplus >= 201103L