Indicates that a user-supplied typemap should take precedence over the default typemaps. This option may be used multiple times, with the last typemap having the highest precedence.
Thanks for digging that up.
I really do think it would be better if our user-supplied typemap took precedence over ExtUtils/typemap. (This is something that should probably be investigated further.)
But it seems by using unmapped T_PTR you're getting the old T_PTR, not the new one, you can't redefine T_PTR, which makes sense.My T_PTR is the same as the original T_PTR, as there was nothing wrong with the original.
I just had to change the typing of
unsigned char* from T_PV to T_PTR. I could only make that switch for the
unmapped type, which was a typedef of
unsigned char*.
Seems I won't need that typedef if I can get the two typemaps to load in the reverse order.
I've just checked and found that I didn't need to provide the T_PTR "INPUT" and "OUTPUT" routines in my custom typemap ("nullmap.txt").
That file needs only to consist of:
unmapped T_PTR
and the T_PTR "INPUT" and "OUTPUT" routines will be read from ExtUtils/typemap.
Apologies - I did wonder about that at the time, but didn't spend the 10 seconds it takes to find out.
'Twould have been much clearer if I had presented the one-line "nullmap.txt" instead of the multi-line version with its "INPUT" and "OUTPUT" sections.
Cheers,
Rob