Index: pym/portage/__init__.py =================================================================== --- pym/portage/__init__.py (revision 12669) +++ pym/portage/__init__.py (working copy) @@ -2079,9 +2079,9 @@ # Escape anything except ".*" which is supposed # to pass through from _get_implicit_iuse() - regex = sorted(re.escape(x) for x in iuse_implicit) - regex = "^(%s)$" % "|".join(regex) - regex = regex.replace("\\.\\*", ".*") + regex = re.escape('|'.join(sorted(iuse_implicit))) + regex = regex.replace('\\|', '|').replace('\\.\\*', '.*') + regex = '^(%s)$' % regex self.configdict["pkg"]["PORTAGE_IUSE"] = regex ebuild_force_test = self.get("EBUILD_FORCE_TEST") == "1"