View | Details | Raw Unified | Return to bug 284131 | Differences between
and this patch

Collapse All | Expand All

(-)compiler/org/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding.java (-2 / +9 lines)
Lines 301-306 Link Here
301
			TypeVariableBinding[] typeVars = Binding.NO_TYPE_VARIABLES;
301
			TypeVariableBinding[] typeVars = Binding.NO_TYPE_VARIABLES;
302
			char[] methodDescriptor = binaryType.getEnclosingMethod();
302
			char[] methodDescriptor = binaryType.getEnclosingMethod();
303
			if (methodDescriptor != null) {
303
			if (methodDescriptor != null) {
304
				// prepare for findMethod below:
305
				if (needFieldsAndMethods) {
306
					createFields(binaryType.getFields(), sourceLevel, missingTypeNames);
307
				}
308
				createMethods(binaryType.getMethods(), sourceLevel, missingTypeNames);
309
				needFieldsAndMethods = false; // mark as done
310
				
304
				MethodBinding enclosingMethod = findMethod(methodDescriptor, missingTypeNames);
311
				MethodBinding enclosingMethod = findMethod(methodDescriptor, missingTypeNames);
305
				typeVars = enclosingMethod.typeVariables;
312
				typeVars = enclosingMethod.typeVariables;
306
			}
313
			}
Lines 682-689 Link Here
682
	int startIndex = 0;
689
	int startIndex = 0;
683
	if (numOfParams > 0) {
690
	if (numOfParams > 0) {
684
		parameters = new TypeBinding[numOfParams];
691
		parameters = new TypeBinding[numOfParams];
685
		index = 1;
692
		index = selector.length+1;  // next character is always '(' so skip it
686
		int end = 0;   // first character is always '(' so skip it
693
		int end = index-1;
687
		for (int i = 0; i < numOfParams; i++) {
694
		for (int i = 0; i < numOfParams; i++) {
688
			while ((nextChar = methodDescriptor[++end]) == '['){/*empty*/}
695
			while ((nextChar = methodDescriptor[++end]) == '['){/*empty*/}
689
			if (nextChar == 'L')
696
			if (nextChar == 'L')

Return to bug 284131