Commit 6397d8df by Iain Buclaw

re PR d/90064 (InSituRegion lacks SPARC64 support)

	PR d/90064
libphobos: Merge upstream phobos 428460ddd

Defines growDownwards on SPARC64, initial patch by Rainer Orth.

Backports another fix to std.process, allowing permissions tests to be
skipped when running as root.

Reviewed-on: https://github.com/dlang/phobos/pull/6962

From-SVN: r270483
parent 6d679a7d
cf95639ffd9ed6f3b9d10d98461b2fbd31615757 428460ddd8087fa28815e613ff04facb51108a7b
The first line of this file holds the git revision number of the last The first line of this file holds the git revision number of the last
merge done from the dlang/phobos repository. merge done from the dlang/phobos repository.
...@@ -395,6 +395,7 @@ struct InSituRegion(size_t size, size_t minAlign = platformAlignment) ...@@ -395,6 +395,7 @@ struct InSituRegion(size_t size, size_t minAlign = platformAlignment)
else version (RISCV32) enum growDownwards = Yes.growDownwards; else version (RISCV32) enum growDownwards = Yes.growDownwards;
else version (RISCV64) enum growDownwards = Yes.growDownwards; else version (RISCV64) enum growDownwards = Yes.growDownwards;
else version (SPARC) enum growDownwards = Yes.growDownwards; else version (SPARC) enum growDownwards = Yes.growDownwards;
else version (SPARC64) enum growDownwards = Yes.growDownwards;
else version (SystemZ) enum growDownwards = Yes.growDownwards; else version (SystemZ) enum growDownwards = Yes.growDownwards;
else static assert(0, "Dunno how the stack grows on this architecture."); else static assert(0, "Dunno how the stack grows on this architecture.");
......
...@@ -1188,13 +1188,16 @@ version (Posix) @system unittest ...@@ -1188,13 +1188,16 @@ version (Posix) @system unittest
// can't run in directory if user does not have search permission on this directory // can't run in directory if user does not have search permission on this directory
version (Posix) version (Posix)
{ {
import core.sys.posix.sys.stat : S_IRUSR; if (core.sys.posix.unistd.getuid() != 0)
auto directoryNoSearch = uniqueTempPath(); {
mkdir(directoryNoSearch); import core.sys.posix.sys.stat : S_IRUSR;
scope(exit) rmdirRecurse(directoryNoSearch); auto directoryNoSearch = uniqueTempPath();
setAttributes(directoryNoSearch, S_IRUSR); mkdir(directoryNoSearch);
assertThrown!ProcessException(spawnProcess(prog.path, null, Config.none, directoryNoSearch)); scope(exit) rmdirRecurse(directoryNoSearch);
assertThrown!ProcessException(spawnProcess(prog.path, null, Config.detached, directoryNoSearch)); setAttributes(directoryNoSearch, S_IRUSR);
assertThrown!ProcessException(spawnProcess(prog.path, null, Config.none, directoryNoSearch));
assertThrown!ProcessException(spawnProcess(prog.path, null, Config.detached, directoryNoSearch));
}
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment