Minor wording issue around effectively final definition

Srikanth S Adayapalam srikanth_sankaran at in.ibm.com
Mon Feb 11 06:00:39 PST 2013


Hello !

 0.6.1 (4.12.4) reads:

A local variable or a method, constructor, lambda, or exception parameter 
is effectively final if it is not final but it never occurs as the left 
hand operand of an assignment operator (15.26) or as the operand of an 
increment or decrement operator (15.14, 15.15). [jsr335-4.12.4-10] 
In addition, a local variable whose declaration lacks an initializer is 
effectively final if all of the following are true: [jsr335-4.12.4-20] 
It is not final. [jsr335-4.12.4-20-A] 
Whenever it occurs as the left-hand operand of an assignment operator, it 
is definitely unassigned and not definitely assigned before the assignment 
(that is, it is definitely unassigned and not definitely assigned after 
the right-hand operand of the assignment) (16).

I think the first sentence meant to say, never occurs as the left hand 
operand of a *compound* assignment operator. 

Srikanth



More information about the lambda-spec-observers mailing list