For an invocation expression expr of the form: or an object creation expression of the form: For an invocation expression, the definite assignment state of v before primary-expression is the same as the state of v before expr. For an invocation expression, the definite assignment state of v before arg1 is the same as the state of v after primary-expression. For an object creation expression, the definite assignment state of v before arg1 is the same as the state of v before expr. For each argument argi, the definite assignment state of v after argi is determined by the normal expression rules, ignoring any ref or out modifiers. For each argument argi for any i greater than one, the definite assignment state of v before argi is the same as the state of v after argi-1. If the variable v is passed as an out argument (i.e., an argument of the form "out v") in any of the arguments, then the state of v after expr is definitely assigned. Otherwise; the state of v after expr is the same as the state of v after argn.