diff src/reduce.sml @ 2195:18e6fb487880

Reduce: add reduction in some spots previously missed, associated with 'case' return types
author Adam Chlipala <adam@chlipala.net>
date Wed, 25 Nov 2015 18:48:17 -0500
parents f463c773ed6a
children
line wrap: on
line diff
--- a/src/reduce.sml	Sun Nov 22 10:25:22 2015 -0500
+++ b/src/reduce.sml	Wed Nov 25 18:48:17 2015 -0500
@@ -588,7 +588,7 @@
                                                                (p, body')
                                                            end) pes
 
-                                        val cc' = {disc = disc, result = c2}
+                                        val cc' = {disc = con env' disc, result = con env' c2}
                                     in
                                         (ECase (e, pes', cc'), loc)
                                     end
@@ -626,7 +626,7 @@
                                                         end) pes
 
                                         val c' = E.subConInCon (0, c) c'
-                                        val cc' = {disc = disc, result = c'}
+                                        val cc' = {disc = con env disc, result = con env c'}
                                     in
                                         (ECase (e, pes', cc'), loc)
                                     end