Add pointer, map, and channel type checking.
Report multiple errors when possible.