summaryrefslogtreecommitdiff
path: root/toplevel/topmain.ml
diff options
context:
space:
mode:
authorDamien Doligez <damien.doligez-inria.fr>2003-05-23 14:44:08 +0000
committerDamien Doligez <damien.doligez-inria.fr>2003-05-23 14:44:08 +0000
commit96f5cf75a6d8f4352fa217ee122217012e226105 (patch)
treed593dd1779900a422b4b027d256f8e77c21d4c91 /toplevel/topmain.ml
parent313d77d1cb4c3d9d4165984c9e43ea077f42cbab (diff)
downloadocaml-96f5cf75a6d8f4352fa217ee122217012e226105.tar.gz
meilleur parsing de la ligne de commande pour les scripts
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@5579 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
Diffstat (limited to 'toplevel/topmain.ml')
-rw-r--r--toplevel/topmain.ml11
1 files changed, 9 insertions, 2 deletions
diff --git a/toplevel/topmain.ml b/toplevel/topmain.ml
index 28276d54d6..4e098b7f55 100644
--- a/toplevel/topmain.ml
+++ b/toplevel/topmain.ml
@@ -31,8 +31,15 @@ let file_argument name =
let ppf = Format.err_formatter in
if Filename.check_suffix name ".cmo" || Filename.check_suffix name ".cma"
then preload_objects := name :: !preload_objects
- else exit
- (if prepare ppf && Toploop.run_script ppf name Sys.argv then 0 else 2)
+ else
+ begin
+ let newargs = Array.sub Sys.argv !Arg.current
+ (Array.length Sys.argv - !Arg.current)
+ in
+ if prepare ppf && Toploop.run_script ppf name newargs
+ then exit 0
+ else exit 2
+ end
let main () =
Arg.parse [