summaryrefslogtreecommitdiff
path: root/MLKSymbol.m
diff options
context:
space:
mode:
Diffstat (limited to 'MLKSymbol.m')
-rw-r--r--MLKSymbol.m13
1 files changed, 12 insertions, 1 deletions
diff --git a/MLKSymbol.m b/MLKSymbol.m
index 73d418a..8a087cf 100644
--- a/MLKSymbol.m
+++ b/MLKSymbol.m
@@ -36,7 +36,10 @@
MLKSymbol *copy = [MLKSymbol allocWithZone:zone];
ASSIGN (copy->name, name);
ASSIGN (copy->homePackage, homePackage);
- ASSIGN (copy->real_identity, self);
+ if (real_identity)
+ ASSIGN (copy->real_identity, real_identity);
+ else
+ ASSIGN (copy->real_identity, self);
return copy;
}
@@ -79,6 +82,14 @@
: self)));
}
+-(unsigned) hash
+{
+ if (real_identity)
+ return [real_identity hash];
+ else
+ return [super hash];
+}
+
-(void) dealloc
{
RELEASE (name);