From 99550ead4feffa2af63e2188ad48df716a1354a9 Mon Sep 17 00:00:00 2001 From: ibuclaw Date: Wed, 21 Aug 2019 07:53:55 +0000 Subject: [PATCH] libphobos: Merge upstream phobos 66ae77ac3 Finishes off phobos support for musl targets. Reviewed-on: https://github.com/dlang/phobos/pull/7108 git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@274770 138bc75d-0d04-0410-961f-82ee72b054a4 --- libphobos/src/MERGE | 2 +- .../allocator/building_blocks/region.d | 6 +++ libphobos/src/std/socket.d | 44 +------------------ libphobos/src/std/stdio.d | 24 +++++----- 4 files changed, 20 insertions(+), 56 deletions(-) diff --git a/libphobos/src/MERGE b/libphobos/src/MERGE index cfac5c66b4ec..6a1e00874bb6 100644 --- a/libphobos/src/MERGE +++ b/libphobos/src/MERGE @@ -1,4 +1,4 @@ -3dc363783ea7b1e82336983486a14f3f44bbeadd +66ae77ac3f97a007a12738e4bc02b3bbfef99bba The first line of this file holds the git revision number of the last merge done from the dlang/phobos repository. diff --git a/libphobos/src/std/experimental/allocator/building_blocks/region.d b/libphobos/src/std/experimental/allocator/building_blocks/region.d index 43dfdb788e5e..835d0937cec2 100644 --- a/libphobos/src/std/experimental/allocator/building_blocks/region.d +++ b/libphobos/src/std/experimental/allocator/building_blocks/region.d @@ -580,6 +580,12 @@ struct InSituRegion(size_t size, size_t minAlign = platformAlignment) assert(a.length == 2001); } +version(CRuntime_Musl) +{ + // sbrk and brk are disabled in Musl: + // https://git.musl-libc.org/cgit/musl/commit/?id=7a995fe706e519a4f55399776ef0df9596101f93 + // https://git.musl-libc.org/cgit/musl/commit/?id=863d628d93ea341b6a32661a1654320ce69f6a07 +} else: private extern(C) void* sbrk(long); private extern(C) int brk(shared void*); diff --git a/libphobos/src/std/socket.d b/libphobos/src/std/socket.d index 2853dbde0c62..a4ba39c83363 100644 --- a/libphobos/src/std/socket.d +++ b/libphobos/src/std/socket.d @@ -163,47 +163,7 @@ string formatSocketError(int err) @trusted { cs = strerror_r(err, buf.ptr, buf.length); } - else version (OSX) - { - auto errs = strerror_r(err, buf.ptr, buf.length); - if (errs == 0) - cs = buf.ptr; - else - return "Socket error " ~ to!string(err); - } - else version (FreeBSD) - { - auto errs = strerror_r(err, buf.ptr, buf.length); - if (errs == 0) - cs = buf.ptr; - else - return "Socket error " ~ to!string(err); - } - else version (NetBSD) - { - auto errs = strerror_r(err, buf.ptr, buf.length); - if (errs == 0) - cs = buf.ptr; - else - return "Socket error " ~ to!string(err); - } - else version (DragonFlyBSD) - { - auto errs = strerror_r(err, buf.ptr, buf.length); - if (errs == 0) - cs = buf.ptr; - else - return "Socket error " ~ to!string(err); - } - else version (Solaris) - { - auto errs = strerror_r(err, buf.ptr, buf.length); - if (errs == 0) - cs = buf.ptr; - else - return "Socket error " ~ to!string(err); - } - else version (CRuntime_Bionic) + else { auto errs = strerror_r(err, buf.ptr, buf.length); if (errs == 0) @@ -211,8 +171,6 @@ string formatSocketError(int err) @trusted else return "Socket error " ~ to!string(err); } - else - static assert(0); auto len = strlen(cs); diff --git a/libphobos/src/std/stdio.d b/libphobos/src/std/stdio.d index 63bc32e96946..4c1ad0baa153 100644 --- a/libphobos/src/std/stdio.d +++ b/libphobos/src/std/stdio.d @@ -44,38 +44,38 @@ version (CRuntime_Glibc) version = GCC_IO; version = HAS_GETDELIM; } - -version (OSX) +else version (CRuntime_Bionic) { version = GENERIC_IO; version = HAS_GETDELIM; } - -version (FreeBSD) +else version (CRuntime_Musl) { version = GENERIC_IO; version = HAS_GETDELIM; } -version (NetBSD) +version (OSX) { version = GENERIC_IO; version = HAS_GETDELIM; } - -version (DragonFlyBSD) +else version (FreeBSD) { version = GENERIC_IO; version = HAS_GETDELIM; } - -version (Solaris) +else version (NetBSD) { version = GENERIC_IO; - version = NO_GETDELIM; + version = HAS_GETDELIM; } - -version (CRuntime_Bionic) +else version (DragonFlyBSD) +{ + version = GENERIC_IO; + version = HAS_GETDELIM; +} +else version (Solaris) { version = GENERIC_IO; version = NO_GETDELIM; -- 2.39.2