hhu-stups / prob-issues

ProB issues (for probcli, ProB Tcl/Tk, ProB2, ProB2UI)
6 stars 0 forks source link

Missing `meta_predicate/1` directives #203

Open pmoura opened 2 years ago

pmoura commented 2 years ago

The Logtalk linter flags several more missing meta_predicate/1 directives, most of them due to not being based on a predicate-prefixing mechanism. Fixing this issue will have no adverse consequences when running using SICStus Prolog or SWI-Prolog but it's a necessary fix for a possible Logtalk port.

(non-exhaustive list)

*     Missing meta_predicate/1 directive for predicate: get_calls_for_table/2
*       while compiling object tools
*       in file /Users/pmoura/ProB_src/src/tools.pl between lines 940-942
*     
*     Missing meta_predicate/1 directive for predicate: call_optional_aux/3
*       while compiling object tools
*       in file /Users/pmoura/ProB_src/src/tools.pl at or above line 1611
*     Missing meta_predicate/1 directive for predicate: exclude_count_aux/5
*       while compiling object tools_lists
*       in file /Users/pmoura/ProB_src/src/tools_lists.pl between lines 84-88
*     Missing meta_predicate/1 directive for predicate: time_raw/4
*       while compiling object debug
*       in file /Users/pmoura/ProB_src/src/debug.pl between lines 216-226
*     Missing meta_predicate/1 directive for predicate: observe_ground/6
*       while compiling object external_functions
*       in file /Users/pmoura/ProB_src/src/external_functions.pl between lines 1946-1948
*     Missing meta_predicate/1 directive for predicate: real_comp_wf_aux/5
*       while compiling object kernel_reals
*       in file /Users/pmoura/ProB_src/src/kernel_reals.pl between lines 156-157
*     Missing meta_predicate/1 directive for predicate: exhaustive_kernel_check_opt/2
*       while compiling object kernel_objects
*       in file /Users/pmoura/ProB_src/src/kernel_objects.pl at or above line 217
*     
*     Missing meta_predicate/1 directive for predicate: exhaustive_kernel_fail_check_opt/2
*       while compiling object kernel_objects
*       in file /Users/pmoura/ProB_src/src/kernel_objects.pl at or above line 251
*     
*     Missing meta_predicate/1 directive for predicate: not_strict_eq_check/2
*       while compiling object kernel_objects
*       in file /Users/pmoura/ProB_src/src/kernel_objects.pl at or above line 4501
*     Missing meta_predicate/1 directive for predicate: avl_map_/2
*       while compiling object avl_custom
*       in file /Users/pmoura/ProB_src/src/avl_custom.pl between lines 411-414
*     
*     Missing meta_predicate/1 directive for predicate: avl_map_/3
*       while compiling object avl_custom
*       in file /Users/pmoura/ProB_src/src/avl_custom.pl between lines 425-428
*     Missing meta_predicate/1 directive for predicate: map_over_typed_bexpr_with_names/2
*       while compiling object bsyntaxtree
*       in file /Users/pmoura/ProB_src/src/bsyntaxtree.pl between lines 2004-2009
*     Missing meta_predicate/1 directive for predicate: post_constraint3/3
*       while compiling object clpfd_interface
*       in file /Users/pmoura/ProB_src/src/clpfd_interface.pl at or above line 524
*     
*     Missing meta_predicate/1 directive for predicate: force_post_constraint/1
*       while compiling object clpfd_interface
*       in file /Users/pmoura/ProB_src/src/clpfd_interface.pl at or above line 542
*     
*     Missing meta_predicate/1 directive for predicate: force_post_constraint/2
*       while compiling object clpfd_interface
*       in file /Users/pmoura/ProB_src/src/clpfd_interface.pl between lines 543-544
*     Missing meta_predicate/1 directive for predicate: block_my_findall_catch_wf2/7
*       while compiling object delay
*       in file /Users/pmoura/ProB_src/src/delay.pl between lines 176-188
*     Missing meta_predicate/1 directive for predicate: call_nv4/9
*       while compiling object kernel_mappings
*       in file /Users/pmoura/ProB_src/src/kernel_mappings.pl between lines 129-130
*     
*     Missing meta_predicate/1 directive for predicate: call_nv3/7
*       while compiling object kernel_mappings
*       in file /Users/pmoura/ProB_src/src/kernel_mappings.pl between lines 159-160
*     
*     Missing meta_predicate/1 directive for predicate: must_succ_kernel_call/4
*       while compiling object kernel_mappings
*       in file /Users/pmoura/ProB_src/src/kernel_mappings.pl between lines 165-173
*     
*     Missing meta_predicate/1 directive for predicate: call_wf0/2
*       while compiling object kernel_mappings
*       in file /Users/pmoura/ProB_src/src/kernel_mappings.pl at or above line 212
*     
*     Missing meta_predicate/1 directive for predicate: call_wf0_3/6
*       while compiling object kernel_mappings
*       in file /Users/pmoura/ProB_src/src/kernel_mappings.pl at or above line 232
*     
*     Missing meta_predicate/1 directive for predicate: call_wf0_2/5
*       while compiling object kernel_mappings
*       in file /Users/pmoura/ProB_src/src/kernel_mappings.pl at or above line 238
*     
*     Missing meta_predicate/1 directive for predicate: call_nv/3
*       while compiling object kernel_mappings
*       in file /Users/pmoura/ProB_src/src/kernel_mappings.pl between lines 329-331
*     
*     Missing meta_predicate/1 directive for predicate: call_nv_or3/4
*       while compiling object kernel_mappings
*       in file /Users/pmoura/ProB_src/src/kernel_mappings.pl between lines 394-395
*     Missing meta_predicate/1 directive for predicate: safe_read_line_aux/6
*       while compiling object parsercall
*       in file /Users/pmoura/ProB_src/src/parsercall.pl between lines 804-813
*     Missing meta_predicate/1 directive for predicate: succeed_max_call_id_aux/4
*       while compiling object succeed_max
*       in file /Users/pmoura/ProB_src/src/succeed_max.pl between lines 49-57
*     Missing meta_predicate/1 directive for predicate: evaluate_boolean_expression/2
*       while compiling object haskell_csp
*       in file /Users/pmoura/ProB_src/src/cia/haskell_csp.pl between lines 2122-2123
*     Missing meta_predicate/1 directive for predicate: generate_node_labels/3
*       while compiling object state_space_reduction
*       in file /Users/pmoura/ProB_src/src/dot/state_space_reduction.pl between lines 155-160
*     
*     Missing meta_predicate/1 directive for predicate: guard_reduce/5
*       while compiling object state_space_reduction
*       in file /Users/pmoura/ProB_src/src/dot/state_space_reduction.pl between lines 232-234
*     
*     Missing meta_predicate/1 directive for predicate: get_and_add_abstract_transition/5
*       while compiling object state_space_reduction
*       in file /Users/pmoura/ProB_src/src/dot/state_space_reduction.pl between lines 480-485
*     Missing meta_predicate/1 directive for predicate: run_cbc_benchmarks/3
*       while compiling object dpllt_solver_benchmarks
*       in file /Users/pmoura/ProB_src/src/dpllt_solver/dpllt_solver_benchmarks.pl between lines 453-459
*     
*     Missing meta_predicate/1 directive for predicate: benchmark_constraints/5
*       while compiling object dpllt_solver_benchmarks
*       in file /Users/pmoura/ProB_src/src/dpllt_solver/dpllt_solver_benchmarks.pl between lines 705-707
*     Missing meta_predicate/1 directive for predicate: evaluate_enabling_predicate_for_por/7
*       while compiling object enable_graph
*       in file /Users/pmoura/ProB_src/src/por/enable_graph.pl between lines 142-161
*     Missing meta_predicate/1 directive for predicate: plspec_some1/3
*       while compiling object plspec
*       in file /Users/pmoura/ProB_src/src/../extensions/plspec/plspec/plspec.pl between lines 285-288
leuschel commented 2 years ago

Added meta_predicates for tools, tools_lists, debug, external_functions, kernel_reals.

leuschel commented 2 years ago

and now also for kernel_objects