Arfrever reported this issue with portage-2.1.10.24 and 2.2.0_alpha64: mkdir -p /tmp/test_repositories cd /tmp/test_repositories mkdir -p {A,B,C}/{metadata,profiles} echo A > A/profiles/repo_name echo B > B/profiles/repo_name echo C > C/profiles/repo_name echo "masters = A" > B/metadata/layout.conf echo "masters = B" > C/metadata/layout.conf echo "category/package" > A/profiles/package.mask echo "-category/package" > B/profiles/package.mask PORTDIR_OVERLAY="/tmp/test_repositories/A /tmp/test_repositories/B" emerge -Opv category/package PORTDIR_OVERLAY="/tmp/test_repositories/A /tmp/test_repositories/B /tmp/test_repositories/C" emerge -Opv category/package <Arfrever> The last command causes unexpected "--- Unmatched removal atom(s) in /tmp/test_repositories/B/profiles/package.mask: -category/package" warning. <Arfrever> The same problem is with "masters = A B" line in C/metadata/layout.conf.
While we contemplate a solution to this bug, I've reverted the following commits from git (portage-2.1.10.24 and 2.2.0_alpha64 do not support layout.conf masters recursion): http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=ab2a6cc357ba3c8272a4a1556e2c0bcd4bee102e http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=37f05a23fd55b633674f91f4d7658c19e41d2d63 http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=5628dac1538985af640102654bce60a8e526daeb
mailing list discussion is warranted for this; thank you for the revert, not the sort of change that should be made w/out wider discussion.
It's fixed in git to avoid the false positives: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=c5d2d4c32f0745f30e0cad2e427e79064f93c593
This is fixed in 2.1.10.25 and 2.2.0_alpha65.