mirror of
https://github.com/CatalaLang/catala.git
synced 2024-09-20 08:47:14 +03:00
e7e89873db
If Catala is compiled without Z3, trying to run it with the backend `Proof` will yield: ``` [ERROR] This instance of Catala was compiled without Z3 support. ``` and return 124 Note that this doesn't change the `make depends`, opam file or CI to account for it, it just enables it at the build-system level. There are also no hooks at this moment to have Catala self-document the options whith which it was compiled (e.g. in the `--help` screen). But that could be added in a more general way later, it's probably not really needed yet.
43 lines
1.4 KiB
OCaml
43 lines
1.4 KiB
OCaml
(* This file is part of the Catala compiler, a specification language for tax
|
|
and social benefits computation rules. Copyright (C) 2022 Inria, contributor:
|
|
Aymeric Fromherz <aymeric.fromherz@inria.fr>
|
|
|
|
Licensed under the Apache License, Version 2.0 (the "License"); you may not
|
|
use this file except in compliance with the License. You may obtain a copy of
|
|
the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
License for the specific language governing permissions and limitations under
|
|
the License. *)
|
|
|
|
(** Replicating the interface, with no actual implementation for compiling
|
|
without the expected backend. All functions print an error message and exit *)
|
|
|
|
let dummy () =
|
|
Utils.Cli.error_print
|
|
"This instance of Catala was compiled without Z3 support.";
|
|
exit 124
|
|
|
|
module Io = struct
|
|
let init_backend () = dummy ()
|
|
|
|
type backend_context = unit
|
|
|
|
let make_context _ _ = dummy ()
|
|
|
|
type vc_encoding = unit
|
|
|
|
let translate_expr _ _ = dummy ()
|
|
|
|
type model = unit
|
|
type vc_encoding_result = Success of model * model | Fail of string
|
|
|
|
let print_positive_result _ = dummy ()
|
|
let print_negative_result _ _ _ = dummy ()
|
|
let encode_and_check_vc _ _ = dummy ()
|
|
end
|