Lines 442-448
Link Here
|
442 |
char[] nextName = compoundName[currentIndex++]; |
442 |
char[] nextName = compoundName[currentIndex++]; |
443 |
invocationSite.setFieldIndex(currentIndex); |
443 |
invocationSite.setFieldIndex(currentIndex); |
444 |
invocationSite.setActualReceiverType(typeBinding); |
444 |
invocationSite.setActualReceiverType(typeBinding); |
445 |
if ((binding = findField(typeBinding, nextName, invocationSite)) != null) { |
445 |
if ((mask & FIELD) != 0 && (binding = findField(typeBinding, nextName, invocationSite)) != null) { |
446 |
if (!binding.isValidBinding()) |
446 |
if (!binding.isValidBinding()) |
447 |
return new ProblemFieldBinding( |
447 |
return new ProblemFieldBinding( |
448 |
((FieldBinding) binding).declaringClass, |
448 |
((FieldBinding) binding).declaringClass, |
Lines 450-460
Link Here
|
450 |
binding.problemId()); |
450 |
binding.problemId()); |
451 |
break; // binding is now a field |
451 |
break; // binding is now a field |
452 |
} |
452 |
} |
453 |
if ((binding = findMemberType(nextName, typeBinding)) == null) |
453 |
if ((binding = findMemberType(nextName, typeBinding)) == null) { |
454 |
return new ProblemBinding( |
454 |
if ((mask & FIELD) != 0) { |
455 |
CharOperation.subarray(compoundName, 0, currentIndex), |
455 |
return new ProblemBinding( |
456 |
typeBinding, |
456 |
CharOperation.subarray(compoundName, 0, currentIndex), |
457 |
NotFound); |
457 |
typeBinding, |
|
|
458 |
NotFound); |
459 |
} else { |
460 |
return new ProblemReferenceBinding( |
461 |
CharOperation.subarray(compoundName, 0, currentIndex), |
462 |
typeBinding, |
463 |
NotFound); |
464 |
} |
465 |
} |
458 |
if (!binding.isValidBinding()) |
466 |
if (!binding.isValidBinding()) |
459 |
return new ProblemReferenceBinding( |
467 |
return new ProblemReferenceBinding( |
460 |
CharOperation.subarray(compoundName, 0, currentIndex), |
468 |
CharOperation.subarray(compoundName, 0, currentIndex), |