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

Collapse All | Expand All

(-)compiler/org/eclipse/jdt/internal/compiler/ast/AllocationExpression.java (-2 / +13 lines)
Lines 84-90 Link Here
84
	ReferenceBinding allocatedType = this.codegenBinding.declaringClass;
84
	ReferenceBinding allocatedType = this.codegenBinding.declaringClass;
85
85
86
	codeStream.new_(allocatedType);
86
	codeStream.new_(allocatedType);
87
	if (valueRequired) {
87
	boolean isUnboxing = (implicitConversion & TypeIds.UNBOXING) != 0;
88
	if (valueRequired || isUnboxing) {
88
		codeStream.dup();
89
		codeStream.dup();
89
	}
90
	}
90
	// better highlight for allocation: display the type individually
91
	// better highlight for allocation: display the type individually
Lines 126-132 Link Here
126
		}
127
		}
127
		codeStream.invokespecial(syntheticAccessor);
128
		codeStream.invokespecial(syntheticAccessor);
128
	}
129
	}
129
	codeStream.generateImplicitConversion(this.implicitConversion);
130
	codeStream.generateImplicitConversion(implicitConversion);
131
	if (!valueRequired && isUnboxing) {
132
		switch (postConversionType(currentScope).id) {
133
			case T_long :
134
			case T_double :
135
				codeStream.pop2();
136
				break;
137
			default :
138
				codeStream.pop();
139
		}
140
	}
130
	codeStream.recordPositionsFrom(pc, this.sourceStart);
141
	codeStream.recordPositionsFrom(pc, this.sourceStart);
131
}
142
}
132
143

Return to bug 184957