--- a/src/HOL/Matrix_LP/Cplex_tools.ML Mon Sep 25 20:56:44 2023 +0200
+++ b/src/HOL/Matrix_LP/Cplex_tools.ML Mon Sep 25 21:09:25 2023 +0200
@@ -1150,15 +1150,17 @@
val command = (wrap cplex)^" --lpt "^(wrap lpname)^" --output "^(wrap resultname)
val answer = #1 (Isabelle_System.bash_output command)
in
- let
- val result = load_glpkResult resultname
- val _ = OS.FileSys.remove lpname
- val _ = OS.FileSys.remove resultname
- in
- result
- end
- handle (Load_cplexResult s) => raise (Execute ("Load_cplexResult: "^s^"\nExecute: "^answer))
- | exn => if Exn.is_interrupt exn then Exn.reraise exn else raise (Execute answer)
+ \<^try>\<open>
+ let
+ val result = load_glpkResult resultname
+ val _ = OS.FileSys.remove lpname
+ val _ = OS.FileSys.remove resultname
+ in
+ result
+ end
+ catch Load_cplexResult s => raise Execute ("Load_cplexResult: "^s^"\nExecute: "^answer)
+ | _ => raise Execute answer
+ \<close>
end
fun solve_cplex prog =