For a statement stmt of the form The definite assignment state of v at the beginning of expr is the same as the definite assignment state of v at the beginning of stmt. If v is an output parameter, then it must be definitely assigned either: after expr or at the end of the finally block of a try-finally or try-catch-finally that encloses the return statement.