(* * Copyright (c) 2015 - present Facebook, Inc. * All rights reserved. * * This source code is licensed under the BSD style license found in the * LICENSE file in the root directory of this source tree. An additional grant * of patent rights can be found in the PATENTS file in the same directory. *) open! Utils (* === Warnings on properties === *) (* Strong Delegate Warning: a property with name delegate should not be declared strong *) val ctl_strong_delegate_warning : CLintersContext.context -> CTL.ast_node -> CTL.t * CIssue.issue_desc option (* Assing Pointer Warning: a property with a pointer type should not be declared `assign` *) val ctl_assign_pointer_warning : CLintersContext.context -> CTL.ast_node -> CTL.t * CIssue.issue_desc option (* Direct Atomic Property access: a property declared atomic should not be accesses directly via its iva *) val ctl_direct_atomic_property_access_warning : CLintersContext.context -> CTL.ast_node -> CTL.t * CIssue.issue_desc option (* CXX_REFERENCE_CAPTURED_IN_OBJC_BLOCK: C++ references should not be captured in blocks. *) val ctl_captured_cxx_ref_in_objc_block_warning : CLintersContext.context -> CTL.ast_node -> CTL.t * CIssue.issue_desc option val ctl_bad_pointer_comparison_warning : CLintersContext.context -> CTL.ast_node -> CTL.t * CIssue.issue_desc option (* REGISTERED_OBSERVER_BEING_DEALLOCATED: an object is registered in a notification center but not removed before deallocation *) val ctl_ns_notification_warning : CLintersContext.context -> CTL.ast_node -> CTL.t * CIssue.issue_desc option (* GLOBAL_VARIABLE_INITIALIZED_WITH_FUNCTION_OR_METHOD_CALL warning: a global variable initialization should not *) (* contain calls to functions or methods as these can be expensive an delay the starting time *) (* of a program *) val ctl_global_var_init_with_calls_warning : CLintersContext.context -> CTL.ast_node -> CTL.t * CIssue.issue_desc option val location_from_stmt : CLintersContext.context -> Clang_ast_t.stmt -> Location.t val location_from_dinfo : CLintersContext.context -> Clang_ast_t.decl_info -> Location.t val location_from_decl : CLintersContext.context -> Clang_ast_t.decl -> Location.t