These macros should be uppercase
If we do it this way round, we can use the type as hashfunc return