Commit ce95cc170b
src/value.zig
@@ -2555,6 +2555,9 @@ pub const Value = extern union {
.lazy_size,
=> return hashInt(ptr_val, hasher, target),
+ // The value is runtime-known and shouldn't affect the hash.
+ .runtime_int => {},
+
else => unreachable,
}
}
test/behavior/src.zig
@@ -20,3 +20,14 @@ test "@src" {
try doTheTest();
}
+
+test "@src used as a comptime parameter" {
+ const S = struct {
+ fn Foo(comptime _: std.builtin.SourceLocation) type {
+ return struct {};
+ }
+ };
+ const T1 = S.Foo(@src());
+ const T2 = S.Foo(@src());
+ try expect(T1 != T2);
+}