View | Details | Raw Unified | Return to bug 162478
Collapse All | Expand All

(-)compiler/org/eclipse/jdt/internal/compiler/lookup/SourceTypeBinding.java (-2 / +6 lines)
Lines 1351-1357 Link Here
1351
	Argument[] arguments = methodDecl.arguments;
1351
	Argument[] arguments = methodDecl.arguments;
1352
	if (arguments != null) {
1352
	if (arguments != null) {
1353
		int size = arguments.length;
1353
		int size = arguments.length;
1354
		method.parameters = new TypeBinding[size];
1354
		method.parameters = Binding.NO_PARAMETERS;
1355
		TypeBinding[] newParameters = new TypeBinding[size];
1355
		for (int i = 0; i < size; i++) {
1356
		for (int i = 0; i < size; i++) {
1356
			Argument arg = arguments[i];
1357
			Argument arg = arguments[i];
1357
			TypeBinding parameterType = arg.type.resolveType(methodDecl.scope, true /* check bounds*/);
1358
			TypeBinding parameterType = arg.type.resolveType(methodDecl.scope, true /* check bounds*/);
Lines 1367-1375 Link Here
1367
				TypeBinding leafType = parameterType.leafComponentType();
1368
				TypeBinding leafType = parameterType.leafComponentType();
1368
			    if (leafType instanceof ReferenceBinding && (((ReferenceBinding) leafType).modifiers & ExtraCompilerModifiers.AccGenericSignature) != 0)
1369
			    if (leafType instanceof ReferenceBinding && (((ReferenceBinding) leafType).modifiers & ExtraCompilerModifiers.AccGenericSignature) != 0)
1369
					method.modifiers |= ExtraCompilerModifiers.AccGenericSignature;
1370
					method.modifiers |= ExtraCompilerModifiers.AccGenericSignature;
1370
				method.parameters[i] = parameterType;
1371
				newParameters[i] = parameterType;
1371
			}
1372
			}
1372
		}
1373
		}
1374
		// only assign parameters if no problems are found
1375
		if (!foundArgProblem)
1376
			method.parameters = newParameters;
1373
	}
1377
	}
1374
1378
1375
	boolean foundReturnTypeProblem = false;
1379
	boolean foundReturnTypeProblem = false;
(-)compiler/org/eclipse/jdt/internal/compiler/Compiler.java (+2 lines)
Lines 692-697 Link Here
692
				// binding resolution
692
				// binding resolution
693
				lookupEnvironment.completeTypeBindings();
693
				lookupEnvironment.completeTypeBindings();
694
			}
694
			}
695
			this.lookupEnvironment.unitBeingCompleted = unit;
695
			this.parser.getMethodBodies(unit);
696
			this.parser.getMethodBodies(unit);
696
			if (unit.scope != null) {
697
			if (unit.scope != null) {
697
				// fault in fields & methods
698
				// fault in fields & methods
Lines 723-728 Link Here
723
			this.handleInternalException(e, unit, null);
724
			this.handleInternalException(e, unit, null);
724
			throw e; // rethrow
725
			throw e; // rethrow
725
		} finally {
726
		} finally {
727
			this.lookupEnvironment.unitBeingCompleted = null;
726
			// No reset is performed there anymore since,
728
			// No reset is performed there anymore since,
727
			// within the CodeAssist (or related tools),
729
			// within the CodeAssist (or related tools),
728
			// the compiler may be called *after* a call
730
			// the compiler may be called *after* a call

Return to bug 162478