summaryrefslogtreecommitdiff
path: root/ccross.sml
diff options
context:
space:
mode:
Diffstat (limited to 'ccross.sml')
-rw-r--r--ccross.sml14
1 files changed, 13 insertions, 1 deletions
diff --git a/ccross.sml b/ccross.sml
index 58f9c32..749687b 100644
--- a/ccross.sml
+++ b/ccross.sml
@@ -1,4 +1,16 @@
-fun main [fname] = Cpp.debugPrint fname
+structure ccross:> CCROSS = struct
+ structure T:> TOKENIZER =
+ Tokenizer(structure H = Hashtable; structure S = Stream)
+
+ structure P:> CPP = Cpp(T)
+
+ structure ExnHandler:> EXN_HANDLER =
+ ExnHandler(structure T = T; structure P = P)
+end
+
+val () = MLton.Exn.setTopLevelHandler ccross.ExnHandler.handler
+
+fun main [fname] = ccross.P.debugPrint fname
| main _ = printLn "Expected a single argument: file name"
val () = main $ CommandLine.arguments ()