src/Pure/Isar/proof.ML
changeset 70729 c92d2abcc998
parent 70728 d5559011b9e6
child 70730 7b5ee1fa5029
--- a/src/Pure/Isar/proof.ML	Tue Sep 17 17:06:05 2019 +0200
+++ b/src/Pure/Isar/proof.ML	Wed Sep 18 20:10:15 2019 +0200
@@ -645,7 +645,7 @@
     val ctxt = context_of state;
 
     val bindings = map (apsnd (map (prep_att ctxt)) o fst) raw_concls;
-    val ((params, prems_propss, concl_propss, result_binds), _) =
+    val ((params, prems_propss, concl_propss, result_binds, _), _) =
       prep_statement raw_fixes raw_prems (map snd raw_concls) ctxt;
     val propss = (map o map) (Logic.close_prop params (flat prems_propss)) concl_propss;
   in
@@ -812,7 +812,7 @@
     val ctxt = context_of state;
 
     (*vars*)
-    val ((vars, propss, _, binds'), vars_ctxt) =
+    val ((vars, propss, _, binds', text'), vars_ctxt) =
       prep_stmt (raw_decls @ raw_fixes) (map snd raw_defs) ctxt;
     val (decls, fixes) = chop (length raw_decls) vars;
     val show_term = Syntax.string_of_term vars_ctxt;
@@ -1057,7 +1057,7 @@
         (if strict_asm then Assumption.assume_export else Assumption.presume_export);
 
     (*params*)
-    val ((params, assumes_propss, shows_propss, result_binds), params_ctxt) = ctxt
+    val ((params, assumes_propss, shows_propss, result_binds, result_text), params_ctxt) = ctxt
       |> prep_statement raw_fixes (map snd raw_assumes) (map snd raw_shows);
 
     (*prems*)
@@ -1089,6 +1089,7 @@
         val export = map export0 #> Variable.export result_ctxt ctxt';
       in
         state'
+        |> map_context (Variable.declare_term result_text)
         |> local_results (results_bindings ~~ burrow export results)
         |-> (fn res => tap (fn st => print_results (context_of st) ((kind, ""), res) : unit))
         |> after_qed (result_ctxt, results)