X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=type_hash.c;h=046e6af975088cbd9968f3b3940925a06e5cd98b;hb=e0a1f3bda124fbc9ed278145548da80902c7358a;hp=9eddefee0b57a1b2090bcac58e069cb960acea70;hpb=f05bef7fd77c2321796b59844e0eb81f6d6e65a0;p=cparser diff --git a/type_hash.c b/type_hash.c index 9eddefe..046e6af 100644 --- a/type_hash.c +++ b/type_hash.c @@ -98,7 +98,7 @@ static unsigned hash_function_type(const function_type_t *type) result ^= hash_ptr(parameter->type); parameter = parameter->next; } - result ^= hash_ptr(type->linkage); + result += type->linkage; result += type->calling_convention; return result; @@ -231,7 +231,8 @@ static bool function_types_equal(const function_type_t *type1, static bool pointer_types_equal(const pointer_type_t *type1, const pointer_type_t *type2) { - return type1->points_to == type2->points_to; + return type1->points_to == type2->points_to && + type1->base_variable == type2->base_variable; } static bool array_types_equal(const array_type_t *type1,