core.sys.posix.unistd: Add XSI legacy bindings#3364
core.sys.posix.unistd: Add XSI legacy bindings#3364ibuclaw wants to merge 1 commit intodlang:masterfrom ibuclaw:xsilegacy
Conversation
|
Thanks for your pull request, @ibuclaw! Bugzilla referencesYour PR doesn't reference any Bugzilla issue. If your PR contains non-trivial changes, please reference a Bugzilla issue or create a manual changelog. Testing this PR locallyIf you don't have a local development environment setup, you can use Digger to test this PR: dub run digger -- build "master + druntime#3364" |
|
What does not supported mean in this case - completely missing or a runtime error? If we are silently assuming they are there when they aren't, deprecation seems the way (then they should be moved to a platform specific alternative). Also, what platforms are effected specifically (I'm not all that familiar with XSI beyond the very basics)? |
Depends on the platform. For Musl, calling
All posix-compliant platforms should implement XSI, but when the baseline supported revision is adjusted - and most probably support version 7 by now - then these functions are |
|
I think that the simplest way would be to just deprecate them. @ibuclaw care to do that in this PR? |
|
ping @ibuclaw |
|
@ibuclaw How do we move forward here? |
|
@ibuclaw Should we close this? |
|
Druntime have been merged into DMD. Please re-submit your PR to |
In the unistd module, there are a number of legacy XSI functions, not all are presently available on all supported platforms.
std.experimental also declares a couple of these functions locally (they shouldn't be doing this).
Some thoughts:
core.sys.<platform-specific>.unistd? Existing functions incore.sys.posix.unistdwill then be labelled asdeprecated.