mirror of
https://github.com/Z3Prover/z3
synced 2025-08-15 15:25:26 +00:00
Add parameter validation for selected API functions
This commit is contained in:
parent
e3139d4e03
commit
07613942da
3 changed files with 14 additions and 5 deletions
|
@ -225,13 +225,15 @@ extern "C" {
|
|||
Z3_TRY;
|
||||
LOG_Z3_mk_fresh_func_decl(c, prefix, domain_size, domain, range);
|
||||
RESET_ERROR_CODE();
|
||||
CHECK_IS_SORT(range, nullptr);
|
||||
CHECK_SORTS(domain_size, domain, nullptr);
|
||||
if (prefix == nullptr) {
|
||||
prefix = "";
|
||||
}
|
||||
|
||||
func_decl* d = mk_c(c)->m().mk_fresh_func_decl(prefix,
|
||||
domain_size,
|
||||
reinterpret_cast<sort*const*>(domain),
|
||||
to_sorts(domain),
|
||||
to_sort(range), false);
|
||||
|
||||
mk_c(c)->save_ast_trail(d);
|
||||
|
@ -243,9 +245,11 @@ extern "C" {
|
|||
Z3_TRY;
|
||||
LOG_Z3_mk_fresh_const(c, prefix, ty);
|
||||
RESET_ERROR_CODE();
|
||||
CHECK_IS_SORT(ty, nullptr);
|
||||
if (prefix == nullptr) {
|
||||
prefix = "";
|
||||
}
|
||||
|
||||
app* a = mk_c(c)->m().mk_fresh_const(prefix, to_sort(ty), false);
|
||||
mk_c(c)->save_ast_trail(a);
|
||||
RETURN_Z3(of_ast(a));
|
||||
|
@ -654,6 +658,7 @@ extern "C" {
|
|||
Z3_TRY;
|
||||
LOG_Z3_get_sort_name(c, t);
|
||||
RESET_ERROR_CODE();
|
||||
CHECK_IS_SORT(t, of_symbol(symbol::null));
|
||||
CHECK_VALID_AST(t, of_symbol(symbol::null));
|
||||
return of_symbol(to_sort(t)->get_name());
|
||||
Z3_CATCH_RETURN(of_symbol(symbol::null));
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue