src/HOL/Tools/BNF/bnf_lfp_compat.ML
changeset 58229 cece11f6262a
parent 58220 a2afad27a0b1
child 58271 2e91e9bbc212
--- a/src/HOL/Tools/BNF/bnf_lfp_compat.ML	Mon Sep 08 15:12:35 2014 +0200
+++ b/src/HOL/Tools/BNF/bnf_lfp_compat.ML	Mon Sep 08 15:54:33 2014 +0200
@@ -217,7 +217,8 @@
         SOME (fp_sugar as {fp = Least_FP, ...}) => fp_sugar
       | _ => not_datatype s);
 
-    val fpTs0 as Type (_, var_As) :: _ = #Ts (#fp_res (lfp_sugar_of (hd fpT_names0)));
+    val fpTs0 as Type (_, var_As) :: _ =
+      map (#T o lfp_sugar_of o fst o dest_Type) (#Ts (#fp_res (lfp_sugar_of (hd fpT_names0))));
     val fpT_names = map (fst o dest_Type) fpTs0;
 
     val _ = check_names (op =) (fpT_names0, fpT_names) orelse not_mutually_recursive fpT_names0;