ECMA-334: 12.3.3.21 Invocation expressions and object creation expressions

Microsoft .NET Framework, ASP.NET, Visual C# (CSharp, C Sharp, C-Sharp) Developer Training, Visual Studio


Jump to: navigation, search
C# Language Specification
© 2006 ECMA International

12.3.3.21 Invocation expressions and object creation expressions

For an invocation expression expr of the form:

primary-expression ( arg1, arg2, … , argn )

or an object creation expression expr of the form:

new type ( arg1, arg2, … , argn )
  • 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.

Today's Deals: Electronics

Personal tools