= Parrot Deprecations for 3.6 = == Special Purpose NCI Parameter Types == The NCI parameter types 'J', '@', 't', '0', 'V', '2', '3', '4', 'B', 'b', 'L', and 'T' have been removed. === Rationale === These types are special-purpose and their function can be accomplished by other means. === Replacement === * 'J', '@', 't', '0': These types accomplish tasks which can be accomplished from PIR and are therefore redundant * 'J': getinterp + pointer NCI type * '@': slurpy param on a wrapping PIR sub * 't': manual lifetime management of C string buffer through NCI access to Parrot_str_to_cstring() and Parrot_str_free_cstring() * '0': null + pointer NCI type * 'V', '2', '3', '4', 'B': A less type-specific pass-by-reference mechanism is available. See the bindings for pcre_compile() in runtime/parrot/library/pcre.pir for an example of its use. * 'b', 'L', 'T': These were poorly documented and were broken in their implementation. No replacement has been provided as these do not represent desirable behaviour.