Version française
Home     About     Download     Resources     Contact us    
Browse thread
[Caml-list] end-of-block CAMLreturn?
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: Christophe Raffalli <christophe.raffalli@u...>
Subject: [Caml-list] Sys.command

It seems that Sys.commd always returns 0 on Windows 98 (even if the 
command does not exist) ?
(it works on XP and Linux).

Is this a Bug or a Windows 98 limitation ?

-- 
Christophe Raffalli
Université de Savoie
Batiment Le Chablais, bureau 21
73376 Le Bourget-du-Lac Cedex

tél: (33) 4 79 75 81 03
fax: (33) 4 79 75 87 42
mail: Christophe.Raffalli@univ-savoie.fr
www: http://www.lama.univ-savoie.fr/~RAFFALLI
---------------------------------------------
IMPORTANT: this mail is signed using PGP/MIME
At least Enigmail/Mozilla, mutt or evolution
can check this signature
---------------------------------------------
re about the previous loop's allocations:
>>
>>for(i=0;i<n;++i) {
>>   CAMLlocal(foo,bar);
>>   // use foo bar
>>   // callback to caml with foo bar, maybe somebody stores them somewhere
>>   CAMLendblock();  // want this
>>}
> 
> 
> If I follow you correctly, there are two ways to achieve the desired
> behavior.  One is to use the older API for GC root registration:
> Begin_roots and End_roots.  (There is some documentation in comments
> in file <caml/memory.h>.)
> 
>   for(i=0;i<n;++i) {
>     foo = bar = Val_unit;
>     Begin_roots(foo,bar);
>     // use foo bar
>     // callback to caml with foo bar, maybe somebody stores them somewhere
>     End_roots();
>   }
> 
> The other way, perhaps preferable, is to move the root registration
> outside the loop:
> 
>   CAMLlocal(foo,bar);
>   for(i=0;i<n;++i) {
>     // use foo bar
>     // callback to caml with foo bar, maybe somebody stores them somewhere
>     foo = bar = Val_unit;  /* don't keep roots longer than necessary
>   }
>   CAMLreturn(whatever);
> 
> Hope this helps,
> 
> - Xavier Leroy
> 
> -------------------
> To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
> Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
> Beginner's list: http://groups.yahoo.com/group/ocaml_beginners

-- 
Christophe Raffalli
Université de Savoie
Batiment Le Chablais, bureau 21
73376 Le Bourget-du-Lac Cedex

tél: (33) 4 79 75 81 03
fax: (33) 4 79 75 87 42
mail: Christophe.Raffalli@univ-savoie.fr
www: http://www.lama.univ-savoie.fr/~RAFFALLI
---------------------------------------------
IMPORTANT: this mail is signed using PGP/MIME
At least Enigmail/Mozilla, mutt or evolution
can check this signature
---------------------------------------------