When solving cases like || ( foo <bar-10 ), generally it's better to pull in foo rather than downgrade bar. Currently, emerge tends to downgrade bar.
|| ( sys-libs/glibc[rpc(-)] net-libs/libtirpc ) ^ the same happens here if the currently installed glibc has no rpc useflag... it also prefers downgrading glibc (impossible) to pulling in libtirpc
Patch posted for review: https://archives.gentoo.org/gentoo-portage-dev/message/92f8d90d158b383474cb217bf6566647 https://github.com/gentoo/portage/pull/225
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/proj/portage.git/commit/?id=7c58e37376166b787abae4713c398feee8abf902 commit 7c58e37376166b787abae4713c398feee8abf902 Author: Zac Medico <zmedico@gentoo.org> AuthorDate: 2017-11-02 08:29:11 +0000 Commit: Zac Medico <zmedico@gentoo.org> CommitDate: 2017-11-02 19:41:56 +0000 dep_zapdeps: install new package, avoid downgrade (bug 635540) Prefer to install a new package rather than to downgrade an installed package. If the installed package should be downgraded due to it being masked, then allow the downgrade. Bug: https://bugs.gentoo.org/635540 Acked-by: Brian Dolbec <dolsen@gentoo.org> pym/portage/dep/dep_check.py | 11 ++- .../tests/resolver/test_or_downgrade_installed.py | 97 ++++++++++++++++++++++ 2 files changed, 107 insertions(+), 1 deletion(-)}