Do not crash on alignof($TYPE).
[cparser] / type_hash.c
index 9635488..7f2e30a 100644 (file)
@@ -181,6 +181,7 @@ static unsigned hash_type(const type_t *type)
 
        unsigned some_prime = 99991;
        hash ^= some_prime * type->base.qualifiers;
+       hash ^= some_prime * type->base.alignment;
 
        return hash;
 }
@@ -322,6 +323,8 @@ static bool types_equal(const type_t *type1, const type_t *type2)
                return false;
        if (type1->base.modifiers != type2->base.modifiers)
                return false;
+       if (type1->base.alignment != type2->base.alignment)
+               return false;
 
        switch (type1->kind) {
        case TYPE_ERROR: