summaryrefslogtreecommitdiff
path: root/libphobos
diff options
context:
space:
mode:
authorIain Buclaw <ibuclaw@gdcproject.org>2025-03-12 18:16:46 +0100
committerIain Buclaw <ibuclaw@gdcproject.org>2025-03-15 17:54:15 +0100
commitdf1f6b98578be7a6276580e35c9302aa5622f113 (patch)
treeadac24cf39366869dd233e2e5fd0a099daad1aea /libphobos
parente8c9f4ab8f0c8ad8da5f7fb0f1a4956507fe64f5 (diff)
d: Merge upstream dmd, druntime d29e3eca45
D front-end changes: - Error messages related to operator overloading have been improved. D runtime changes: - Import latest fixes from druntime. gcc/d/ChangeLog: * dmd/MERGE: Merge upstream dmd d29e3eca45. * d-codegen.cc (can_elide_copy_p): Update for new front-end interface. * d-lang.cc (d_handle_option): Likewise. * expr.cc (class ExprVisitor): Likewise. libphobos/ChangeLog: * libdruntime/MERGE: Merge upstream druntime d29e3eca45.
Diffstat (limited to 'libphobos')
-rw-r--r--libphobos/libdruntime/MERGE2
-rw-r--r--libphobos/libdruntime/core/bitop.d5
-rw-r--r--libphobos/libdruntime/core/sys/windows/ntdef.d7
3 files changed, 12 insertions, 2 deletions
diff --git a/libphobos/libdruntime/MERGE b/libphobos/libdruntime/MERGE
index a91f40b6bfc..c81fccbb902 100644
--- a/libphobos/libdruntime/MERGE
+++ b/libphobos/libdruntime/MERGE
@@ -1,4 +1,4 @@
-b7e3b3b61711bf6c6cad27c7b5b73df0e570c215
+d29e3eca45edaeef63b31f78c9846fc6e2870c49
The first line of this file holds the git revision number of the last
merge done from the dlang/dmd repository.
diff --git a/libphobos/libdruntime/core/bitop.d b/libphobos/libdruntime/core/bitop.d
index 59445f09147..cc05247d6ca 100644
--- a/libphobos/libdruntime/core/bitop.d
+++ b/libphobos/libdruntime/core/bitop.d
@@ -704,6 +704,11 @@ private int softPopcnt(N)(N x) pure
return cast(int) x;
}
+version (DigitalMars) version (AArch64)
+{
+ int _popcnt(ulong x) pure;
+}
+
version (DigitalMars) version (AnyX86)
{
/**
diff --git a/libphobos/libdruntime/core/sys/windows/ntdef.d b/libphobos/libdruntime/core/sys/windows/ntdef.d
index a0213dc56f0..160443312b4 100644
--- a/libphobos/libdruntime/core/sys/windows/ntdef.d
+++ b/libphobos/libdruntime/core/sys/windows/ntdef.d
@@ -33,7 +33,12 @@ void InitializeObjectAttributes(OBJECT_ATTRIBUTES* p, UNICODE_STRING* n,
}
}
-bool NT_SUCCESS(int x) { return x >= 0; }
+pragma(inline, true) @safe pure nothrow @nogc {
+ bool NT_SUCCESS(NTSTATUS Status) { return Status >= 0; }
+ bool NT_INFORMATION(NTSTATUS Status) { return ((cast(ULONG) Status) >> 30) == 1; }
+ bool NT_WARNING(NTSTATUS Status) { return ((cast(ULONG) Status) >> 30) == 2; }
+ bool NT_ERROR(NTSTATUS Status) { return ((cast(ULONG) Status) >> 30) == 3; }
+}
/* In MinGW, NTSTATUS, UNICODE_STRING, STRING and their associated pointer
* type aliases are defined in ntdef.h, ntsecapi.h and subauth.h, each of