diff --git a/src/com/goide/inspections/GoNoNewVariablesInspection.java b/src/com/goide/inspections/GoNoNewVariablesInspection.java index decef0441d..27a934569b 100644 --- a/src/com/goide/inspections/GoNoNewVariablesInspection.java +++ b/src/com/goide/inspections/GoNoNewVariablesInspection.java @@ -16,6 +16,7 @@ package com.goide.inspections; +import com.goide.psi.GoForClause; import com.goide.psi.GoShortVarDeclaration; import com.goide.psi.GoVarDefinition; import com.goide.psi.GoVisitor; @@ -24,6 +25,7 @@ import com.intellij.openapi.util.TextRange; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiReference; +import com.intellij.psi.util.PsiTreeUtil; import com.intellij.util.containers.ContainerUtil; import org.jetbrains.annotations.NotNull; @@ -38,7 +40,7 @@ protected GoVisitor buildGoVisitor(@NotNull final ProblemsHolder holder, @Override public void visitShortVarDeclaration(@NotNull GoShortVarDeclaration o) { List list = o.getVarDefinitionList(); - if (list.isEmpty()) return; + if (list.isEmpty() || PsiTreeUtil.getParentOfType(o, GoForClause.class) != null) return; GoVarDefinition first = ContainerUtil.getFirstItem(list); GoVarDefinition last = ContainerUtil.getLastItem(list); diff --git a/testData/highlighting/shortVars.go b/testData/highlighting/shortVars.go index 85b8617e75..0124021de1 100644 --- a/testData/highlighting/shortVars.go +++ b/testData/highlighting/shortVars.go @@ -65,4 +65,10 @@ func Test2() (err error) { } return err -} \ No newline at end of file +} + +func shadowing(i int) { + for i := 1; i < 3; i++ { + _ = i + } +}