add FuncType
add test for,functype
generate union
fix