--- a/src/Pure/Isar/class.ML Fri Jun 06 18:36:35 2008 +0200
+++ b/src/Pure/Isar/class.ML Sat Jun 07 19:18:38 2008 +0200
@@ -714,7 +714,8 @@
| matchings _ = I
val tvartab = (fold o fold_aterms) matchings ts Vartab.empty
handle Sorts.CLASS_ERROR e => error (Sorts.class_error pp e);
- val inst = map_type_tvar (fn (vi, _) => TVar (vi, the (Vartab.lookup tvartab vi)));
+ val inst = map_type_tvar
+ (fn (vi, sort) => TVar (vi, the_default sort (Vartab.lookup tvartab vi)));
in if Vartab.is_empty tvartab then NONE else SOME ((map o map_types) inst ts) end;
fun init_instantiation (tycos, vs, sort) thy =