1 ## Copyright (C) 2010,2013,2016-2017 Matthew Fluet.
2 # Copyright (C) 1999-2006, 2008 Henry Cejtin, Matthew Fluet, Suresh
3 # Jagannathan, and Stephen Weeks.
4 # Copyright (C) 1997-2000 NEC Research Institute.
6 # MLton is released under a BSD-style license.
7 # See the file MLton-LICENSE for details.
10 SRC
= $(shell cd ..
&& pwd
)
14 PATH
= $(BIN
):$(shell echo
$$PATH)
23 RESOLVE_SCOPES
= program topdec strdec dec
24 OBJPTR_MAPS
= objptr-rep32.map objptr-rep64.map
25 NORMAL_METADATA_MAPS
= normal-metadata-size32.map normal-metadata-size64.map normal-metadata-size128.map
26 ARRAY_METADATA_MAPS
= array-metadata-size96.map array-metadata-size128.map array-metadata-size196.map array-metadata-size256.map
27 SEQINDEX_MAPS
= seqindex-int32.map seqindex-int64.map
29 DEFAULT_INT
= int32 int64 intinf
30 DEFAULT_REAL
= real32 real64
31 DEFAULT_WORD
= word32 word64
35 "$(MLTON)" -disable-ann deadCode
-stop tc
-show-types true \
36 -prefer-abs-paths true
-show-def-use basis-library.def-use \
39 .PHONY
: type-check-def
41 "$(MLTON)" -disable-ann deadCode
-stop tc
-show-types true \
44 .PHONY
: type-check-all
46 for resolvescope in
$(RESOLVE_SCOPES
); do \
47 for objptr in
$(OBJPTR_MAPS
); do \
48 for normalmetadata in
$(NORMAL_METADATA_MAPS
); do \
49 for arraymetadata in
$(ARRAY_METADATA_MAPS
); do \
50 for seqindex in
$(SEQINDEX_MAPS
); do \
51 for defchar in
$(DEFAULT_CHAR
); do \
52 for defint in
$(DEFAULT_INT
); do \
53 for defreal in
$(DEFAULT_REAL
); do \
54 for defword in
$(DEFAULT_WORD
); do \
55 echo
"Type checking: $$resolvescope $$objptr $$normalmetadata $$arraymetadata $$seqindex $$defchar $$defint $$defreal $$defword"; \
56 echo
"$(MLTON)" -disable-ann deadCode
-disable-ann resolveScope
-default-ann
"\"resolveScope $$resolvescope\"" -stop tc
-show-types true \
57 -mlb-path-map
"maps/$$objptr" \
58 -mlb-path-map
"maps/$$normalmetadata" \
59 -mlb-path-map
"maps/$$arraymetadata" \
60 -mlb-path-map
"maps/$$seqindex" \
61 -default-type
"$$defchar" \
62 -default-type
"$$defint" \
63 -default-type
"$$defreal" \
64 -default-type
"$$defword" \
66 "$(MLTON)" -disable-ann deadCode
-disable-ann resolveScope
-default-ann
"resolveScope $$resolvescope" -stop tc
-show-types true \
67 -mlb-path-map
"maps/$$objptr" \
68 -mlb-path-map
"maps/$$normalmetadata" \
69 -mlb-path-map
"maps/$$arraymetadata" \
70 -mlb-path-map
"maps/$$seqindex" \
71 -default-type
"$$defchar" \
72 -default-type
"$$defint" \
73 -default-type
"$$defreal" \
74 -default-type
"$$defword" \
76 done
; done
; done
; done
; done
; done
; done
; done
; done
;