diff src/compiler.sml @ 1061:e8a35d710ab9

Context globals; ctype functions
author Adam Chlipala <adamc@hcoop.net>
date Tue, 08 Dec 2009 10:46:50 -0500
parents eaba663fd6aa
children 3bc726a822fb
line wrap: on
line diff
--- a/src/compiler.sml	Tue Dec 08 09:33:08 2009 -0500
+++ b/src/compiler.sml	Tue Dec 08 10:46:50 2009 -0500
@@ -508,7 +508,14 @@
                                    | SOME _ => ErrorMsg.error "Duplicate 'timeout' directive";
                                  timeout := SOME (valOf (Int.fromString arg)))
                               | "ffi" => ffi := relify arg :: !ffi
-                              | "link" => link := relifyA arg :: !link
+                              | "link" => let
+                                    val arg = if size arg >= 2 andalso String.substring (arg, 0, 2) = "-l" then
+                                                  arg
+                                              else
+                                                  relifyA arg
+                                in
+                                    link := arg :: !link
+                                end
                               | "include" => headers := relifyA arg :: !headers
                               | "script" => scripts := arg :: !scripts
                               | "clientToServer" => clientToServer := ffiS () :: !clientToServer