• N
    In a syntactic position where an lvalue is expected, we reserve `var (...)` (#13636) · 004b2816
    Neal Gafter 提交于
    * In a syntactic position where an lvalue is expected, we reserve `var (...)`
    for possible future extension (e.g. a deconstruction), no matter what `...` is.
    This specifically applies to
      - The left-hand-side of an assignment. The only syntactically valid form is as a deconstruction declaration statement; other forms are some kind of error. `var(1) = 2;`
      - Similarly for compound assignments, including ++ and --.
      - In any expression, following `out` or `ref`. These should not bind (successfully) as an invocation.
        - In an argument position, like `M(out var (1))`
        - In a "ref expression", for example `ref int x = ref var(1);` or `return ref var(1);`.
    004b2816
CSharpResources.resx 266.9 KB