drop vacuous decls;
authorwenzelm
Mon, 21 Nov 2011 23:03:31 +0100
changeset 45612 a3ed5b65b85e
parent 45611 8e71b9228d2d
child 45613 70e5b43535cd
drop vacuous decls;
src/Pure/Isar/attrib.ML
--- a/src/Pure/Isar/attrib.ML	Mon Nov 21 21:38:08 2011 +0100
+++ b/src/Pure/Isar/attrib.ML	Mon Nov 21 23:03:31 2011 +0100
@@ -281,6 +281,7 @@
         val facts' =
           if eq_list (eq_fst strict_eq_thm) (decls', fact') then
             [((b, []), map2 (fn (th, atts1) => fn (_, atts2) => (th, atts1 @ atts2)) decls' fact')]
+          else if forall (null o snd) decls' then [((b, []), fact')]
           else [(empty_binding, decls'), ((b, []), fact')];
       in (facts', context') end)
   |> fst |> flat |> map (apsnd (map (apfst single)));