protected void verifyVariableModifiers(VariableNode v) { ModifiersSet modifiersSet = v.getModifiers(); if (modifiersSet == null) return; ASModifier[] modifiers = modifiersSet.getAllModifiers(); IExpressionNode site = v.getNameExpressionNode(); for (ASModifier modifier : modifiers) { if (modifier == ASModifier.NATIVE) { classScope.addProblem(new NativeVariableProblem(site)); } else if (modifier == ASModifier.DYNAMIC) { classScope.addProblem(new DynamicNotOnClassProblem(site)); } else if (modifier == ASModifier.FINAL) { classScope.addProblem(new FinalOutsideClassProblem(site)); } else if (modifier == ASModifier.OVERRIDE) { classScope.addProblem(new InvalidOverrideProblem(site)); } else if (modifier == ASModifier.VIRTUAL) { classScope.addProblem(new VirtualOutsideClassProblem(site)); } } classScope.getMethodBodySemanticChecker().checkForDuplicateModifiers(v); }