-
-
Notifications
You must be signed in to change notification settings - Fork 427
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
Replacing util::function_nonser on std::function in hpx_init #5284
Conversation
Can one of the admins verify this patch? |
@toktarev thanks for looking into this! Much appreciated. What compatibility implications do you see for this patch? Should we consider introducing a compatibility layer? |
@hkaiser I will add back-compatibility tests |
BTW, thanks for adding the move semantics for the intermediate APIs. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for doing this!
As for compatibility, I wonder if we could get by without that... Since we're currently using hpx::util::function_nonser
(not the unique
version), even if someone has explicitly created the entry point upfront and written out the type:
hpx::util::function_nonser<void()> = myentrypoint;
hpx::init(myentrypoint, ...);
even that will work. hpx::util::function_nonser
can't be constructed from a noncopyable callable just like std::function
so that stays the same.
dc058d4
to
0acc4e1
Compare
I am not sure if it was caused by my changes |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, thanks!
Was it caused by my changes or this is regular failure ? |
Regular failure, unfortunately. The macOS build is not particularly well taken care of, but nothing for you to worry about. |
retest |
Is this something I should fix ? |
These tests fail occasionally. The failures are unrelated to your changes. |
retest |
This looks good as is. It can go in. |
retest |
Proposed Changes
Any background context you want to provide?
Use std::function in public APIs: #4987