aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/tools/skylark
diff options
context:
space:
mode:
Diffstat (limited to 'src/tools/skylark')
-rw-r--r--src/tools/skylark/java/com/google/devtools/skylark/skylint/StatementWithoutEffectChecker.java6
-rw-r--r--src/tools/skylark/javatests/com/google/devtools/skylark/skylint/StatementWithoutEffectCheckerTest.java4
2 files changed, 8 insertions, 2 deletions
diff --git a/src/tools/skylark/java/com/google/devtools/skylark/skylint/StatementWithoutEffectChecker.java b/src/tools/skylark/java/com/google/devtools/skylark/skylint/StatementWithoutEffectChecker.java
index 3e50ae4587..7ec1b4c23b 100644
--- a/src/tools/skylark/java/com/google/devtools/skylark/skylint/StatementWithoutEffectChecker.java
+++ b/src/tools/skylark/java/com/google/devtools/skylark/skylint/StatementWithoutEffectChecker.java
@@ -81,7 +81,11 @@ public class StatementWithoutEffectChecker extends SyntaxTreeVisitor {
// list]
return;
}
- issues.add(Issue.create(NO_EFFECT_CATEGORY, "expression result not used", node.getLocation()));
+ String message = "expression result not used";
+ if (expr instanceof ListComprehension && !topLevel) {
+ message += ". Use a for-loop instead instead of a list comprehension.";
+ }
+ issues.add(Issue.create(NO_EFFECT_CATEGORY, message, node.getLocation()));
}
@Override
diff --git a/src/tools/skylark/javatests/com/google/devtools/skylark/skylint/StatementWithoutEffectCheckerTest.java b/src/tools/skylark/javatests/com/google/devtools/skylark/skylint/StatementWithoutEffectCheckerTest.java
index 4595f31670..a00a1a1d56 100644
--- a/src/tools/skylark/javatests/com/google/devtools/skylark/skylint/StatementWithoutEffectCheckerTest.java
+++ b/src/tools/skylark/javatests/com/google/devtools/skylark/skylint/StatementWithoutEffectCheckerTest.java
@@ -58,7 +58,9 @@ public class StatementWithoutEffectCheckerTest {
findIssues(
"def f():", " [print(x) for x in range(5)] # should be replaced by for-loop")
.toString())
- .contains("2:3-2:30: expression result not used [no-effect]");
+ .contains(
+ "2:3-2:30: expression result not used."
+ + " Use a for-loop instead instead of a list comprehension. [no-effect]");
}
@Test