The emerge manpage says that packages can be specified including the version. Hence, e.g. "emerge icewm-1.2.2-r1" is expected to work. However, it causes "there are no masked or unmasked ebuilds to satisfy "icewm-1.2.2-r1"". Doesn't work for any package, any version, no matter if masked or unmasked, no matter if given with or without the package category. Bug?
try emerge \=category/package-version-revision
It's in the docs under the dependancy section.
Which docs, where? The emerge manpage says: emerge [options] [action] [ebuild | tbz2file | class | dependency] ... and ebuild An ebuild must be, at a minimum, a valid Portage package directory name without a version or cate- tory, such as portage or python. Both categories and version numbers may be used in addition, such as sys-apps/portage or python-2.2.1-r2. emerge ignores a trailing slash so that filename comple- tion can be used. The ebuild may also be an actual filename, such as /usr/portage/app-admin/python/python-2.2.1-r2.ebuild. Hence, something like emerge openoffice-1.0.1-r1 is definitely valid and expected to work according to the man page, but in practice fails with emerge: there are no masked or unmasked ebuilds to satisfy "openoffice-1.0.1-r1". (there is an ebuild "openoffice-1.0.1-r1"!). Hence, either the man page or emerge is broken.
Two paragraphs down. The specific thing you are refering to is wrong, yes. Fixed in CVS.
*** Bug 14813 has been marked as a duplicate of this bug. ***