import ada.wrappers; import ada.transformations; walk wrap_ada_specs (); match DefiningName (x"(.*)_h") wrap w_DefiningName ("\1_Wrapped"); match ParamSpec() and p_type_expression ().filter ("Interfaces.C.Strings.chars_ptr") and not p_defining_name ().filter ("leaveMeAlone") walk chars_into_string (); match SubpDecl (f_subp_spec (x"^function" and p_returns ().filter ("Interfaces.C.Strings.chars_ptr"))) walk chars_into_string ();