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

(-)compiler/org/eclipse/jdt/internal/compiler/ast/ForeachStatement.java (-2 / +3 lines)
Lines 261-267 Link Here
261
		this.action.generateCode(scope, codeStream);
261
		this.action.generateCode(scope, codeStream);
262
262
263
		// continuation point
263
		// continuation point
264
		int continuationPC = codeStream.position;
265
		if (this.continueLabel != null) {
264
		if (this.continueLabel != null) {
266
			this.continueLabel.place();
265
			this.continueLabel.place();
267
			// generate the increments for next iteration
266
			// generate the increments for next iteration
Lines 276-281 Link Here
276
		}
275
		}
277
		// generate the condition
276
		// generate the condition
278
		conditionLabel.place();
277
		conditionLabel.place();
278
		int conditionPC = codeStream.position;
279
		
279
		if (this.postCollectionInitStateIndex != -1) {
280
		if (this.postCollectionInitStateIndex != -1) {
280
			codeStream.removeNotDefinitelyAssignedVariables(currentScope, postCollectionInitStateIndex);
281
			codeStream.removeNotDefinitelyAssignedVariables(currentScope, postCollectionInitStateIndex);
281
		}
282
		}
Lines 292-298 Link Here
292
				codeStream.ifne(actionLabel);
293
				codeStream.ifne(actionLabel);
293
				break;
294
				break;
294
		}
295
		}
295
		codeStream.recordPositionsFrom(continuationPC, this.elementVariable.sourceStart);
296
		codeStream.recordPositionsFrom(conditionPC, this.elementVariable.sourceStart);
296
297
297
		breakLabel.place();
298
		breakLabel.place();
298
		codeStream.exitUserScope(scope);
299
		codeStream.exitUserScope(scope);

Return to bug 119175