CVS: sml-dist/src/compiler/FLINT/trans translate.sml, 1.33.4.18, 1.33.4.19 transtypes.sml, 1.5.10.7, 1.5.10.8
David MacQueen <[email protected]> Fri, 18 Aug 2006 15:58:49 -0700
| Newsgroups | gmane.comp.lang.sml.smlnj.commits |
|---|---|
| Message-ID | <[email protected]> |
Update of /cvsroot/smlnj/sml-dist/src/compiler/FLINT/trans
In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv12356/src/compiler/FLINT/trans
Modified Files:
Tag: primop-branch-2
translate.sml transtypes.sml
Log Message:
adding kind checking to chkplexp.sml
Index: translate.sml
===================================================================
RCS file: /cvsroot/smlnj/sml-dist/src/compiler/FLINT/trans/translate.sml,v
retrieving revision 1.33.4.18
retrieving revision 1.33.4.19
diff -C2 -d -r1.33.4.18 -r1.33.4.19
*** translate.sml 6 Aug 2006 06:05:09 -0000 1.33.4.18
--- translate.sml 18 Aug 2006 22:58:46 -0000 1.33.4.19
***************
*** 25,29 ****
structure DI = DebIndex
structure EM = ErrorMsg
! structure LT = PLambdaType
structure M = Modules
structure MC = MatchComp
--- 25,29 ----
structure DI = DebIndex
structure EM = ErrorMsg
! structure LT = PLambdaType (* = LtyExtern *)
structure M = Modules
structure MC = MatchComp
***************
*** 117,120 ****
--- 117,122 ----
fun mkv () = mkvN NONE
+ val kindCh = LT.tkTycGen ()
+
(** generate the set of ML-to-FLINT type translation functions *)
val {tpsKnd, tpsTyc, toTyc, toLty, strLty, fctLty, markLBOUND} =
***************
*** 998,1002 ****
val exp' = mkExp(exp, DI.next d)
(* increase the depth to indicate that the expression is
! * going to be wrapped by a type abstraction (TFN) *)
(* restore tyvar states to that before the translation *)
--- 1000,1004 ----
val exp' = mkExp(exp, DI.next d)
(* increase the depth to indicate that the expression is
! * going to be wrapped by a type abstraction (TFN); see body *)
(* restore tyvar states to that before the translation *)
***************
*** 1126,1130 ****
DA.LVAR v =>
let val knds = map tpsKnd argtycs
! val nd = DI.next d
val body = mkStrexp (def, nd)
val hdr = buildHdr v
--- 1128,1132 ----
DA.LVAR v =>
let val knds = map tpsKnd argtycs
! val nd = DI.next d (* reflecting type abstraction *)
val body = mkStrexp (def, nd)
val hdr = buildHdr v
***************
*** 1453,1456 ****
--- 1455,1460 ----
val body = mkDec (rootdec, DI.top) exportLexp
val _ = debugmsg "<<mkDec"
+ (** type check body (including kind check) **)
+ val _ = ChkPlexp.checkLty(body,0)
(** add bindings for intinf constants *)
Index: transtypes.sml
===================================================================
RCS file: /cvsroot/smlnj/sml-dist/src/compiler/FLINT/trans/transtypes.sml,v
retrieving revision 1.5.10.7
retrieving revision 1.5.10.8
diff -C2 -d -r1.5.10.7 -r1.5.10.8
*** transtypes.sml 14 Aug 2006 21:42:33 -0000 1.5.10.7
--- transtypes.sml 18 Aug 2006 22:58:46 -0000 1.5.10.8
***************
*** 275,282 ****
LT.tcc_var(DI.calc(d, depth), num)
end
! | h (UBOUND _) = LT.tcc_void
(* dbm: should this have been converted to a TV_MARK before
* being passed to toTyc? *)
! | h (OPEN _) = LT.tcc_void
| h _ = bug "toTyc:h" (* LITERAL and SCHEME should not occur *)
--- 275,282 ----
LT.tcc_var(DI.calc(d, depth), num)
end
! | h (UBOUND _) = (print "#### toTyc UBOUND!"; LT.tcc_void)
(* dbm: should this have been converted to a TV_MARK before
* being passed to toTyc? *)
! | h (OPEN _) = (print "#### toTyc OPEN!"; LT.tcc_void)
| h _ = bug "toTyc:h" (* LITERAL and SCHEME should not occur *)
-------------------------------------------------------------------------
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