Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

unwrapped doesn't work with movable only types. #1404

Closed
sithhell opened this issue Mar 10, 2015 · 0 comments
Closed

unwrapped doesn't work with movable only types. #1404

sithhell opened this issue Mar 10, 2015 · 0 comments

Comments

@sithhell
Copy link
Member

sithhell commented Mar 10, 2015

unwrapped currently fails to compile for futures containing a movable only type due to the use of boost::fusion::fold. For example:

#include <hpx/hpx.hpp>
#include <hpx/lcos/future.hpp>
#include <hpx/util/unwrapped.hpp>

#include <utility>

struct movable_only
{
    movable_only() {}

    movable_only(movable_only const&) = delete;
    movable_only& operator= (movable_only const&) = delete;
};

int main()
{
    hpx::future<movable_only> f = hpx::make_ready_future(movable_only());
    hpx::util::unwrapped([](movable_only) {})(std::move(f));
}
@sithhell sithhell added this to the 0.9.11 milestone Mar 10, 2015
@hkaiser hkaiser modified the milestones: 0.9.11, 0.9.12 Nov 12, 2015
@hkaiser hkaiser modified the milestones: 0.9.99, 1.0.0 Jun 27, 2016
@hkaiser hkaiser modified the milestones: 1.0.0, 1.1.0 Apr 23, 2017
Naios added a commit to Naios/hpx that referenced this issue Jul 24, 2017
* Use hpx::util::unwrap and hpx::util::unwrapping instead,
  that clearify which underlying implementation should
  be used (the immediate or the deferred one).
  The automatic implementation selection was broken since
  unwrapped allowed to pass non future arguments through.
* Closes STEllAR-GROUP#1400
* Closes STEllAR-GROUP#1404
* Closes STEllAR-GROUP#2456
* Ref STEllAR-GROUP#1126
* Ref STEllAR-GROUP#1132
Naios added a commit to Naios/hpx that referenced this issue Jul 24, 2017
* Use hpx::util::unwrap and hpx::util::unwrapping instead,
  that clearify which underlying implementation should
  be used (the immediate or the deferred one).
  The automatic implementation selection was broken since
  unwrapped allowed to pass non future arguments through.
* Closes STEllAR-GROUP#1400
* Closes STEllAR-GROUP#1404
* Closes STEllAR-GROUP#2456
* Ref STEllAR-GROUP#1126
* Ref STEllAR-GROUP#1132
Naios added a commit to Naios/hpx that referenced this issue Jul 25, 2017
* Use hpx::util::unwrap and hpx::util::unwrapping instead,
  that clearify which underlying implementation should
  be used (the immediate or the deferred one).
  The automatic implementation selection was broken since
  unwrapped allowed to pass non future arguments through.
* Closes STEllAR-GROUP#1400
* Closes STEllAR-GROUP#1404
* Closes STEllAR-GROUP#2456
* Ref STEllAR-GROUP#1126
* Ref STEllAR-GROUP#1132
Naios added a commit to Naios/hpx that referenced this issue Jul 25, 2017
* Use hpx::util::unwrap and hpx::util::unwrapping instead,
  that clearify which underlying implementation should
  be used (the immediate or the deferred one).
  The automatic implementation selection was broken since
  unwrapped allowed to pass non future arguments through.
* Closes STEllAR-GROUP#1400
* Closes STEllAR-GROUP#1404
* Closes STEllAR-GROUP#2456
* Ref STEllAR-GROUP#1126
* Ref STEllAR-GROUP#1132
Naios added a commit to Naios/hpx that referenced this issue Jul 25, 2017
* Use hpx::util::unwrap and hpx::util::unwrapping instead,
  that clearify which underlying implementation should
  be used (the immediate or the deferred one).
  The automatic implementation selection was broken since
  unwrapped allowed to pass non future arguments through.
* Closes STEllAR-GROUP#1400
* Closes STEllAR-GROUP#1404
* Closes STEllAR-GROUP#2456
* Ref STEllAR-GROUP#1126
* Ref STEllAR-GROUP#1132
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants