added codegen for character arguments