Skip to content

concept cannot be overloaded with var concept #9733

Open
@dawkot

Description

@dawkot

So this is valid code:

func foo(x: int): int = x
func foo(x: var int): var int = x
var x = 0
discard foo x

But this isn't:

type Foo = concept foo
func foo(x: Foo): Foo = x
func foo(x: var Foo): var Foo = x
var x = 0
discard foo x
Error: ambiguous call; both inim_1542378399.foo(x: Foo)[declared in inim_1542378399.nim(4, 5)] and inim_1542378399.foo(x: var Foo)[declared in inim_1542378399.nim(5, 5)] match for: (int)

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions