It would be really nice if we could store both foo[-bar] and foo[bar] in $PKGDIR. As far as I can see, all required information is already in Package file. All we need is a mechanism to distinguish files, like e.g. hash of USE as a suffix.
Am I too naive?
It can be done. The most obvious hurdle is that portage's bindbapi class currently assumes that there is only one package instance per cpv.
*** This bug has been marked as a duplicate of bug 150031 ***