variable codegen