Sema: complete the Type.hash function
Similar to how Type.eql was reworked in the previous commit, this commit reworks Type.hash to check all the different kinds of tags that a Type can be represented with. It also completes the implementation for all types except error sets, which need to have Type.eql enhanced as well.
This commit is contained in:
@@ -157,8 +157,8 @@ const MonomorphedFuncsContext = struct {
|
||||
// The generic function Decl is guaranteed to be the first dependency
|
||||
// of each of its instantiations.
|
||||
const generic_owner_decl = key.owner_decl.dependencies.keys()[0];
|
||||
const generic_func = generic_owner_decl.val.castTag(.function).?.data;
|
||||
std.hash.autoHash(&hasher, @ptrToInt(generic_func));
|
||||
const generic_func: *const Fn = generic_owner_decl.val.castTag(.function).?.data;
|
||||
std.hash.autoHash(&hasher, generic_func);
|
||||
|
||||
// This logic must be kept in sync with the logic in `analyzeCall` that
|
||||
// computes the hash.
|
||||
|
||||
Reference in New Issue
Block a user