[
Home
]
[ Index:
by date
|
by threads
]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
| Date: | -- (:) |
| From: | Warp <warplayer@f...> |
| Subject: | [Caml-list] input_line is blocking |
Hi
I'm running "ocamlc" by using Unix.open_process_full in order to write an
automatic compiler.
Right now, it's working fine, but I got now a problem with input_line :
after running open_process_full , i'm first reading all its stdout lines of
the process until End_of_file is raised, then all its stderr lines using the
same function.
It has work fine for few weeks now, but now I found that in some cases
input_line will block, not raising End_of_file.
Actually I got the following errors (on purpose ! ) in one of my test files
:
File "player.ml", line 16, characters 6-66:
Warning: this expression should have type unit.
The implementation player.ml does not match the interface player.cmi :
Modules do not match:
sig
type 'a t = 'a array
...
....
end
is not included in
sig
...........
end
The field 'c_value' is required but not provided
I tried to correct few errors, and if I correct enough of them, it works
the call to input_line on the stdout where NO DATA is written is raising
End_of_file ) , but if correct some other errors, I won't work again...
Perhaps something to do with bufferization ?
If ocamlc generates too much data on stderr, then he waits for the calling
process to read that data, but the process is currently reading on its
stdout.... And vice-versa for ocamldep ( which generates a lot of data on
its stdout )
Any help would be apprecied
Nicolas Cannasse
-------------------
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