codegen: make first work on strings as well