Skip to content

Warning 1173 for (?<-) dynamic assignment operator #14418

@rolfsuter

Description

@rolfsuter

When implementing (?<-) dynamic assignment operator, a FS1173 is shown.

Repro steps

  1. Target .NET7
  2. Code:
type Foo =
    static member (?<-) (foo : Foo, name : string, v : string) = ()
  • Compiler warning FS1173: Infix operator member '?<-' has 3 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ...

Expected behavior

  • No compiler warning
  • Should proceed without warning in F# test: [https://github.com/dotnet/fsharp/blob/main/tests/fsharp/core/syntax/test.fsx#L51]

Known workarounds

  • The code compiles and works
  • No workaround needed

Related information

Microsoft Visual Studio Community 2022
Version 17.4.2
VisualStudio.17.Release/17.4.2+33122.133
Microsoft .NET Framework
Version 4.8.04084

Installed Version: Community

Visual C++ 2022 00482-90000-00000-AA414
Microsoft Visual C++ 2022

F# Formatting 1.0
F# source code formatting using Fantomas.

Visual F# Tools 17.4.0-beta.22512.4+525d5109e389341bb90b144c24e2ad1ceec91e7b
Microsoft Visual F# Tools

Visual Studio IntelliCode 2.2
AI-assisted development for Visual Studio.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    Status

    Done

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions