code generation for pointers