wording: warn about self references instead of "forward" ones

This commit is contained in:
Anna Kozlova
2014-07-02 11:27:51 +02:00
parent 1f8864bfa9
commit 53cf6f6905
4 changed files with 5 additions and 4 deletions

View File

@@ -1181,7 +1181,7 @@ public class HighlightUtil extends HighlightUtilBase {
final PsiType caughtType = parameter.getType();
if (caughtType instanceof PsiClassType) {
HighlightInfo info = checkSimpleCatchParameter(parameter, thrownTypes, (PsiClassType)caughtType);
return info == null ? null : Collections.<HighlightInfo>singletonList(info);
return info == null ? null : Collections.singletonList(info);
}
if (caughtType instanceof PsiDisjunctionType) {
return checkMultiCatchParameter(parameter, thrownTypes);
@@ -1814,7 +1814,7 @@ public class HighlightUtil extends HighlightUtilBase {
if (!containingClass.getManager().areElementsEquivalent(containingClass, PsiTreeUtil.getParentOfType(expression, PsiClass.class))) {
return null;
}
String description = JavaErrorMessages.message("illegal.forward.reference");
String description = initField == referencedField ? JavaErrorMessages.message("illegal.self.reference") : JavaErrorMessages.message("illegal.forward.reference");
return HighlightInfo.newHighlightInfo(HighlightInfoType.ERROR).range(expression).descriptionAndTooltip(description).create();
}

View File

@@ -242,6 +242,7 @@ duplicate.switch.label=Duplicate label ''{0}''
switch.colon.expected.after.case.label=':' expected
illegal.forward.reference=Illegal forward reference
illegal.self.reference=Illegal self reference
unknown.class=Unknown class: ''{0}''
illegal.type.void=Illegal type: 'void'

View File

@@ -13,7 +13,7 @@ public class a {
int k = 1 + <error descr="Illegal forward reference">ki</error>;
int ki;
final int fi5 = <error descr="Illegal forward reference">fi5</error> + 1;
final int fi5 = <error descr="Illegal self reference">fi5</error> + 1;
}
class a1 {

View File

@@ -1,5 +1,5 @@
public class LambdaTest {
Op lambda_fib = (n) -> (n < 2) ? 1 : <error descr="Illegal forward reference">lambda_fib</error>.op(n - 1) + <error descr="Illegal forward reference">lambda_fib</error>.op(n - 2);
Op lambda_fib = (n) -> (n < 2) ? 1 : <error descr="Illegal self reference">lambda_fib</error>.op(n - 1) + <error descr="Illegal self reference">lambda_fib</error>.op(n - 2);
{
Op lambda_fib = (n) -> (n < 2) ? 1 : <error descr="Variable 'lambda_fib' might not have been initialized">lambda_fib</error>.op(n - 1) + lambda_fib.op(n - 2);