Portage currently (2.0.46-r4) mentions it downgrades (D) packages when its actually installing an older version of some packages. Like installs with only gtk+-2 (slot=2) when gtk+-1 (slot=1) is needed, it should't mention downgrade, just mention New . This confuses a lot of ppl, i've seen a lot of questions/uncertainty about it.
upgrading/installing both really
Portage find foo-1.2 to be outdated and decides to update to foo-1.2.1 however when presenting this information it searches the pkgdb and finds foo-2.1 installed in another slot so it sais foo-1.2.1 will be installed, downgrading foo-2.1. This is plain silly, why not keep the information from the beginning? state that foo-1.2.1 will update foo-1.2 and just dont mention any other version. Portage should handle foo-1.2 in slot 1 and foo-2.1 in slot 2 as completely diffret packages...
Dupe of #4698
Fixed in cvs. It's smarter now, but still a little hokey. It'll be completely fixed in portage-2.1