-
Notifications
You must be signed in to change notification settings - Fork 149
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
Mark fcontext asm functions as hidden visibility #271
Conversation
These functions should not be exported as dynamic symbols if a library uses boost.
There are many softwares using boost context asm codes to implement their own context switching, this may be a huge break change for them. |
Are you maybe confusing it with the properly namespaced C++ functions like boost::context::make_fcontext? (I admit I can't find its definition right now, but that seems to be the one documented, not the C variant). |
I agree this, but https://github.com/php/php-src/blob/39ae00fa0a72e7668b419399567c9709160e0bbb/Zend/zend_fibers.c#L176 |
Any proposal how to approach it? |
Unfortunately, tests fail for on MIPS and RISCV64:
|
probably caused by misconfiguration of CI-tests |
ty |
This change seems to break Coroutine and Fiber on macOS. |
I am confused how it works anywhere actually?
I guess short-term reverting might be the way to go to not leave things broken in develop. |
This is clearly a hack misusing an existing cpp file, but this approach at least compiles on macOS: |
Ran ./b2 libs/context/test and got only passes. |
That would be nice ... |
These functions should not be exported as dynamic
symbols if a library uses boost.
Note: I have no idea which if any changes armasm, armclang or xcoff assembler targets would need. It is also very lightly tested, essentially only the arm64_aapcs_macho target at this point.
So maybe more of a bug report/discussion point at this stage.