@ -117,13 +117,13 @@ let is_objc_memory_model_controlled o =
Core_foundation_model . is_objc_memory_model_controlled o
Core_foundation_model . is_objc_memory_model_controlled o
let get_predefined_ms_method condition class_name method_name mk_procname
let get_predefined_ms_method condition class_name method_name mk_procname
arguments return_type builtin =
arguments return_type attributes builtin =
if condition then
if condition then
let procname =
let procname =
match builtin with
match builtin with
| Some procname -> procname
| Some procname -> procname
| None -> mk_procname class_name method_name in
| None -> mk_procname class_name method_name in
let ms = CMethod_signature . make_ms procname arguments return_type
let ms = CMethod_signature . make_ms procname arguments return_type attributes
( Ast_expressions . dummy_source_range () ) false in
( Ast_expressions . dummy_source_range () ) false in
Some ms
Some ms
else None
else None
@ -131,7 +131,7 @@ let get_predefined_ms_method condition class_name method_name mk_procname
let get_predefined_ms_stringWithUTF8String class_name method_name mk_procname =
let get_predefined_ms_stringWithUTF8String class_name method_name mk_procname =
let condition = class_name = nsstring_cl && method_name = string_with_utf8_m in
let condition = class_name = nsstring_cl && method_name = string_with_utf8_m in
get_predefined_ms_method condition class_name method_name mk_procname [ ( " x " , " char * " ) ]
get_predefined_ms_method condition class_name method_name mk_procname [ ( " x " , " char * " ) ]
id_cl None
id_cl [] None
let get_predefined_ms_retain_release class_name method_name mk_procname =
let get_predefined_ms_retain_release class_name method_name mk_procname =
let condition = is_retain_or_release method_name in
let condition = is_retain_or_release method_name in
@ -139,18 +139,18 @@ let get_predefined_ms_retain_release class_name method_name mk_procname =
if is_retain_method method_name | | is_autorelease_method method_name
if is_retain_method method_name | | is_autorelease_method method_name
then id_cl else void in
then id_cl else void in
get_predefined_ms_method condition nsobject_cl method_name mk_procname
get_predefined_ms_method condition nsobject_cl method_name mk_procname
[ ( self , class_name ) ] return_type ( get_builtinname method_name )
[ ( self , class_name ) ] return_type [] ( get_builtinname method_name )
let get_predefined_ms_autoreleasepool_init class_name method_name mk_procname =
let get_predefined_ms_autoreleasepool_init class_name method_name mk_procname =
let condition = ( method_name = init ) && ( class_name = nsautorelease_pool_cl ) in
let condition = ( method_name = init ) && ( class_name = nsautorelease_pool_cl ) in
get_predefined_ms_method condition class_name method_name mk_procname
get_predefined_ms_method condition class_name method_name mk_procname
[ ( self , class_name ) ] void None
[ ( self , class_name ) ] void [] None
let get_predefined_ms_nsautoreleasepool_release class_name method_name mk_procname =
let get_predefined_ms_nsautoreleasepool_release class_name method_name mk_procname =
let condition = ( method_name = release | | method_name = drain ) &&
let condition = ( method_name = release | | method_name = drain ) &&
( class_name = nsautorelease_pool_cl ) in
( class_name = nsautorelease_pool_cl ) in
get_predefined_ms_method condition class_name method_name mk_procname [ ( self , class_name ) ]
get_predefined_ms_method condition class_name method_name mk_procname [ ( self , class_name ) ]
void ( Some SymExec . ModelBuiltins . __objc_release_autorelease_pool )
void [] ( Some SymExec . ModelBuiltins . __objc_release_autorelease_pool )
let get_predefined_model_method_signature class_name method_name mk_procname =
let get_predefined_model_method_signature class_name method_name mk_procname =
match get_predefined_ms_nsautoreleasepool_release class_name method_name mk_procname with
match get_predefined_ms_nsautoreleasepool_release class_name method_name mk_procname with