CVS: sml-dist/src/compiler/Elaborator/types typecheck.sml, 1.8.4.4, 1.8.4.5

George Kuan <[email protected]> Wed, 12 Jul 2006 08:43:17 -0700
Newsgroups gmane.comp.lang.sml.smlnj.commits
Message-ID <[email protected]>
Update of /cvsroot/smlnj/sml-dist/src/compiler/Elaborator/types
In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv12787/src/compiler/Elaborator/types

Modified Files:
      Tag: primop-branch-2
	typecheck.sml 
Log Message:
sigmatch is still functorized because of PLambda Types, the compiler builds now but does not bootstrap

Index: typecheck.sml
===================================================================
RCS file: /cvsroot/smlnj/sml-dist/src/compiler/Elaborator/types/typecheck.sml,v
retrieving revision 1.8.4.4
retrieving revision 1.8.4.5
diff -C2 -d -r1.8.4.4 -r1.8.4.5
*** typecheck.sml	6 Jul 2006 20:10:33 -0000	1.8.4.4
--- typecheck.sml	12 Jul 2006 15:43:13 -0000	1.8.4.5
***************
*** 346,350 ****
                 val _ = unifyTy(nty, ty) 
              in (** (CONpat(dcon,insts),ty) *)
! 	       (CONpat(dcon, SOME ty), ty)
             end
         | APPpat(dcon as DATACON{typ,rep,...},_,arg) =>
--- 346,350 ----
                 val _ = unifyTy(nty, ty) 
              in (** (CONpat(dcon,insts),ty) *)
! 	       (CONpat(dcon, [ref (INSTANTIATED ty)]), ty)
             end
         | APPpat(dcon as DATACON{typ,rep,...},_,arg) =>
***************
*** 419,423 ****
         | CONexp(dcon as DATACON{typ,...},_) => 
             let val (ty,insts) = instantiatePoly typ
!             in (CONexp(dcon, SOME ty), ty)
             end
         | INTexp (_,ty) => (oll_push ty; (exp,ty))
--- 419,423 ----
         | CONexp(dcon as DATACON{typ,...},_) => 
             let val (ty,insts) = instantiatePoly typ
!             in (CONexp(dcon, [ref (INSTANTIATED ty)]), ty)
             end
         | INTexp (_,ty) => (oll_push ty; (exp,ty))
***************
*** 663,667 ****
  	        let val (pat',pty) = patType(pat,infinity,region)
  		    val (exp',ety) = expType(exp,occ,region)
!                     val generalize = isValue exp (* orelse isVarTy ety *)
  		 in unifyErr{ty1=pty,ty2=ety, name1="pattern", name2="expression",
  			     message="pattern and expression in val dec don't agree",
--- 663,667 ----
  	        let val (pat',pty) = patType(pat,infinity,region)
  		    val (exp',ety) = expType(exp,occ,region)
!                     val generalize = TypesUtil.isValue exp (* orelse isVarTy ety *)
  		 in unifyErr{ty1=pty,ty2=ety, name1="pattern", name2="expression",
  			     message="pattern and expression in val dec don't agree",



-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642