@Override
  public void visitRegExpConditional(RegExpConditional conditional) {
    if (!myLanguageHosts.supportsConditionals(conditional)) {
      myHolder.newAnnotation(HighlightSeverity.ERROR,
                             RegExpBundle.message("error.conditionals.are.not.supported.in.this.regex.dialect")).create();
    }
    final RegExpAtom condition = conditional.getCondition();
    if (!myLanguageHosts.supportConditionalCondition(condition)) {
      if (condition instanceof RegExpGroup) {
        myHolder.newAnnotation(HighlightSeverity.ERROR,
                               RegExpBundle.message("error.lookaround.conditions.in.conditionals.not.supported.in.this.regex.dialect"))
          .range(condition)
          .create();
      }
      else if (condition != null) {
        final ASTNode child = condition.getNode().getFirstChildNode();
        final IElementType type = child.getElementType();
        if (type == RegExpTT.QUOTED_CONDITION_BEGIN || type == RegExpTT.GROUP_BEGIN || type == RegExpTT.ANGLE_BRACKET_CONDITION_BEGIN) {
          myHolder.newAnnotation(HighlightSeverity.ERROR,
                                 RegExpBundle.message("error.this.kind.group.reference.condition.not.supported.in.this.regex.dialect"))
            .range(condition)
            .create();
        }
      }
    }
  }
@Override
  public void visitRegExpConditional(RegExpConditional conditional)