Commit afa0834195

Andrew Kelley <andrew@ziglang.org>
2024-03-21 22:35:08
add std.debug.inValgrind
This is like `@inComptime` but for the Valgrind virtual machine. Related #17717
1 parent 12191c8
Changed files (1)
lib
lib/std/debug.zig
@@ -2858,6 +2858,16 @@ pub const SafetyLock = struct {
     }
 };
 
+/// Detect whether the program is being executed in the Valgrind virtual machine.
+///
+/// When Valgrind integrations are disabled, this returns comptime-known false.
+/// Otherwise, the result is runtime-known.
+pub inline fn inValgrind() bool {
+    if (@inComptime()) return false;
+    if (!builtin.valgrind_support) return false;
+    return std.valgrind.runningOnValgrind() > 0;
+}
+
 test {
     _ = &dump_hex;
 }