Index: /trunk/scripts/TagInfoExtract.java
===================================================================
--- /trunk/scripts/TagInfoExtract.java	(revision 15984)
+++ /trunk/scripts/TagInfoExtract.java	(revision 15985)
@@ -58,5 +58,4 @@
 import org.openstreetmap.josm.gui.mappaint.mapcss.MapCSSRule;
 import org.openstreetmap.josm.gui.mappaint.mapcss.MapCSSStyleSource;
-import org.openstreetmap.josm.gui.mappaint.mapcss.Selector;
 import org.openstreetmap.josm.gui.mappaint.mapcss.parsergen.MapCSSParser;
 import org.openstreetmap.josm.gui.mappaint.mapcss.parsergen.ParseException;
@@ -343,9 +342,5 @@
         private List<TagInfoTag> convertStyleSheet() {
             return styleSource.rules.stream()
-                    .map(rule -> rule.selector)
-                    .filter(Selector.GeneralSelector.class::isInstance)
-                    .map(Selector.GeneralSelector.class::cast)
-                    .map(Selector.AbstractSelector::getConditions)
-                    .flatMap(Collection::stream)
+                    .flatMap(rule -> rule.selector.getConditions().stream())
                     .filter(ConditionFactory.SimpleKeyValueCondition.class::isInstance)
                     .map(ConditionFactory.SimpleKeyValueCondition.class::cast)
Index: /trunk/src/org/openstreetmap/josm/gui/mappaint/mapcss/Selector.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/mappaint/mapcss/Selector.java	(revision 15984)
+++ /trunk/src/org/openstreetmap/josm/gui/mappaint/mapcss/Selector.java	(revision 15985)
@@ -37,4 +37,5 @@
 import org.openstreetmap.josm.gui.mappaint.mapcss.ConditionFactory.OpenEndPseudoClassCondition;
 import org.openstreetmap.josm.tools.CheckParameterUtil;
+import org.openstreetmap.josm.tools.CompositeList;
 import org.openstreetmap.josm.tools.Geometry;
 import org.openstreetmap.josm.tools.Geometry.PolygonIntersection;
@@ -124,4 +125,10 @@
      */
     Selector optimizedBaseCheck();
+
+    /**
+     * Returns the list of conditions.
+     * @return the list of conditions
+     */
+    List<Condition> getConditions();
 
     /**
@@ -170,4 +177,9 @@
             this.right = b;
             this.type = type;
+        }
+
+        @Override
+        public List<Condition> getConditions() {
+            return new CompositeList<>(left.getConditions(), right.getConditions());
         }
 
@@ -643,8 +655,5 @@
         }
 
-        /**
-         * Returns the list of conditions.
-         * @return the list of conditions
-         */
+        @Override
         public List<Condition> getConditions() {
             return conds;
