| typeeq (Typedef a, Typedef b) = (Symbol.name a) = (Symbol.name b)
| typeeq (Pointer a, Pointer b) = typeeq (a, b)
| typeeq (Array a, Array b) = typeeq (a, b)
| typeeq (Typedef a, Typedef b) = (Symbol.name a) = (Symbol.name b)
| typeeq (Pointer a, Pointer b) = typeeq (a, b)
| typeeq (Array a, Array b) = typeeq (a, b)