Skip to content
Merged
Show file tree
Hide file tree
Changes from 7 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion spectec/src/exe-spectec/main.ml
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ type pass =
| TypeFamilyRemoval
| Else
| Undep
| Uncaseremoval
| AliasDemut

(* This list declares the intended order of passes.
Expand All @@ -31,7 +32,7 @@ passers (--all-passes, some targets), we do _not_ want to use the order of
flags on the command line.
*)
let _skip_passes = [ Unthe ] (* Not clear how to extend them to indexed types *)
let all_passes = [ TypeFamilyRemoval; Undep; Totalize; Else; Sideconditions; Sub; AliasDemut ]
let all_passes = [ TypeFamilyRemoval; Undep; Totalize; Else; Uncaseremoval; Sideconditions; Sub; AliasDemut ]

type file_kind =
| Spec
Expand Down Expand Up @@ -92,6 +93,7 @@ let pass_flag = function
| AliasDemut -> "alias-demut"
| Else -> "else"
| Undep -> "remove-indexed-types"
| Uncaseremoval -> "uncase-removal"

let pass_desc = function
| Sub -> "Synthesize explicit subtype coercions"
Expand All @@ -101,6 +103,7 @@ let pass_desc = function
| TypeFamilyRemoval -> "Transform Type families into sum types"
| Else -> "Eliminate the otherwise premise in relations"
| Undep -> "Transform indexed types into types with well-formedness predicates"
| Uncaseremoval -> "Eliminate the uncase expression"
| AliasDemut -> "Lifts type aliases out of mutual groups"


Expand All @@ -112,6 +115,7 @@ let run_pass : pass -> Il.Ast.script -> Il.Ast.script = function
| TypeFamilyRemoval -> Middlend.Typefamilyremoval.transform
| Else -> Middlend.Else.transform
| Undep -> Middlend.Undep.transform
| Uncaseremoval -> Middlend.Uncaseremoval.transform
| AliasDemut -> Middlend.AliasDemut.transform


Expand Down
1 change: 1 addition & 0 deletions spectec/src/middlend/dune
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
else
undep
utils
uncaseremoval
aliasDemut
)
)
Loading