| changeset 57549 | 7a2fbd8c1d98 | 
| parent 57527 | 1b07ca054327 | 
| child 57633 | 4ff8c090d580 | 
--- a/src/HOL/Tools/BNF/bnf_lfp_rec_sugar.ML Sat Jul 12 19:54:04 2014 +0200 +++ b/src/HOL/Tools/BNF/bnf_lfp_rec_sugar.ML Mon Jul 14 01:22:59 2014 +0200 @@ -284,7 +284,8 @@ | NONE => let val (g, g_args) = strip_comb g' in (case try (get_ctr_pos o fst o dest_Free) g of - SOME ctr_pos => + SOME ~1 => subst_rec () + | SOME ctr_pos => (length g_args >= ctr_pos orelse raise PRIMREC ("too few arguments in recursive call", [t]); (case AList.lookup (op =) mutual_calls y of