explicitly check that at least one argument is present to avoid low-level exception
authorkrauss
Wed, 01 Apr 2009 11:46:17 +0200
changeset 30832 521f7d801da1
parent 30829 d64a293f23ba
child 30833 0e6ee93d0fa2
explicitly check that at least one argument is present to avoid low-level exception
src/HOL/Tools/function_package/fundef_common.ML
--- a/src/HOL/Tools/function_package/fundef_common.ML	Tue Mar 31 15:57:10 2009 -0700
+++ b/src/HOL/Tools/function_package/fundef_common.ML	Wed Apr 01 11:46:17 2009 +0200
@@ -246,6 +246,8 @@
                              ("Head symbol of left hand side must be " 
                               ^ plural "" "one out of " fnames ^ commas_quote fnames)
                                             
+            val _ = length args > 0 orelse input_error "Function has no arguments:"
+
             fun add_bvs t is = add_loose_bnos (t, 0, is)
             val rvs = (add_bvs rhs [] \\ fold add_bvs args [])
                         |> map (fst o nth (rev qs))