im sorry, why would it be md_ptr? what is md_ptr? i tried.. %include cpointer.i %pointer_functions(MY_DIGIT, digit_ptr) ptr = new_digit_ptr() doIt("a message", ptr) ...doesnt work..still needs a DIGIT **