well, yes and no. sure the
compiler rebuilds itself properly. but the toolkit is composed of more packages than just the compiler. there are plenty of packages in the system fileset that DON'T get properly recompiled unless you take one of two approaches: 1) you know exactly which ebuilds to rebuild and the order in which to rebuild them, and you take the time to rebuild them manually, or 2) you use a brute strength approach and perform a redundant emerge on the system fileset that doesn't require the time and effort at the console of manually selecting ebuilds. either method will work as long as you rebuild all of the files that need to be rebuilt.
look at programs like zlib for example. its a very important low-level static library. if you don't rebuild it after a toolkit upgrade, its going to have statically retained libraries from the previous build that reference toolkit components that no longer exist. python and perl are other prime offenders in this regard -- python hates a toolkit upgrade so much that its just plain evil.
unfortunately, there are no shortage of ebuilds in the system toolkit that are not part of glibc or gcc or the compiler section of the toolkit per se. so if you limit your toolkit rebuild to the
compiler alone, you're going to get an incomplete solution to your problem -- you can have the compiler rebuild itself ad infinitum and you still won't fix the problems related to failures to recompile other components of the system fileset that need to be purged of statically retained libraries that reference the original toolkit that isn't even present any more.
statically retained libraries, missing symlinks, library errors induced by changing CHOST, etc. are all too common gentoo problems that fall into the category of mysterious gremlin-like problems that are difficult to chase down. these are the problems that most frequently frustrate gentoo users. the vast majority of them aren't caused by system bugs. the vast majority of them are caused by inexperienced users cutting corners and skipping steps in the toolkit rebuild, whether they know that they're doing it or not.
believe it or not, Gentoo is an absolutely stable system if it is built properly. IMHO the only time Gentoo becomes an unstable platform is when somebody builds the base system improperly. such problems as those i've mentioned earlier can be
completely avoided by taking the right steps to avoid them. redundantly rebuilding the
entire system fileset, rather than limiting your attention to rebuilding the compiler takes CPU time but not seat time, and it completely eliminates these problems that are often so difficult for less experienced users to isolate.
i'm not saying that anyone HAS to build their system one way or another. but having been around the block as many times as i have, i've figured out why Gentoo works when it works and why Gentoo doesn't work when it doesn't work. for me, Gentoo is an absolutely stable, rock-solid system that is without peer. am i just lucky? is it all just coincidence?
so far we've had alot of opinions for building the system one way or another, to keep all of the opinions expressed in context, it might be helpful to look at each user's profile and look at their post history. personally, i'm more likely to follow the advice of people who are solving problems rather than the advice of people who have been reporting problems, without regard of their postcounts. but that's just my two cents worth. YMMV.