add has() for more types
avoid invalid IR emission for array literal

It occurs when array literal has array elements whose lengths are
different each other