Skip to content

<expected>: Add deleted function overloads to expected #4279

@frederick-vs-ja

Description

@frederick-vs-ja

Currently,

Given that the standard generally doesn't make move functions conditionally deleted, I tried to submit an LWG issue to constrain the move assignment operator of expected<cv void, E>. Edit: this is now LWG-4025.

It seems that the existence of deleted overloads can affect overload resolution in some corner cases, e.g. when someone uses a class derived from expected with using expected::operator=;. On the other hand, we can properly constrain copy functions since C++20, so it's doubtful whether expected should have deleted overloads.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingfixedSomething works now, yay!

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions