summaryrefslogtreecommitdiffstats
path: root/pym/portage/dep.py
diff options
context:
space:
mode:
Diffstat (limited to 'pym/portage/dep.py')
-rw-r--r--pym/portage/dep.py11
1 files changed, 8 insertions, 3 deletions
diff --git a/pym/portage/dep.py b/pym/portage/dep.py
index ae6363d07..8c819138f 100644
--- a/pym/portage/dep.py
+++ b/pym/portage/dep.py
@@ -890,11 +890,16 @@ def match_from_list(mydep, candidate_list):
candidate_list = mylist
mylist = []
for x in candidate_list:
- # Note: IUSE intersection is neglected here since there
- # is currently no way to access implicit IUSE. However, IUSE
- # filtering can be added elsewhere in the chain.
use = getattr(x, "use", None)
if use is not None:
+ regex = x.iuse.regex
+ missing_iuse = False
+ for y in mydep.use.required:
+ if regex.match(y) is None:
+ missing_iuse = True
+ break
+ if missing_iuse:
+ continue
if mydep.use.enabled.difference(use.enabled):
continue
if mydep.use.disabled.intersection(use.enabled):