adding more warning flags, fixing incorrect function prototype in hash