On Mon, Jul 25, 2005 at 11:35:27AM +0200, Paolo Bonzini wrote: > > Ok, but such a code used to be compiled succesively with gcc for > > years. Then, some change _in_ gcc has occured. That is why I've > > posted to here. > > Yes, it was deprecated in 3.1 (released three years ago) and removed in > 3.3 (released two years ago).
Really, things are not _so_ dramatical... This is a cite from extend.tex: * These identifiers are not preprocessor macros. In GCC 3.3 and * earlier, in C only, __FUNCTION__ and __PRETTY_FUNCTION__ were * treated as string literals; they could be used to initialize char * arrays, and they could be concatenated with other string literals. * GCC 3.4 and later treat them as variables, like __func__. So, the behaviour is changed for 3.4, and is not changed for 3.3. And it is STILL not changed - 3.3 is alive - isn't it?