From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by yquem.inria.fr (Postfix) with ESMTP id 6F7AABB9C for ; Thu, 5 Jan 2006 14:13:49 +0100 (CET) Received: from ext.lri.fr (ext.lri.fr [129.175.15.4]) by concorde.inria.fr (8.13.0/8.13.0) with ESMTP id k05DDnYR017735 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Thu, 5 Jan 2006 14:13:49 +0100 Received: from smtp.lri.fr (serveur3-5 [129.175.3.5]) by ext.lri.fr (Postfix) with ESMTP id C97BF202455; Thu, 5 Jan 2006 14:13:48 +0100 (CET) Received: from pc9-152 (pc9-152 [129.175.9.152]) by smtp.lri.fr (Postfix) with ESMTP id 1368DCED9B; Thu, 5 Jan 2006 14:13:48 +0100 (CET) Received: from filliatr by pc9-152 with local (Exim 3.36 #1 (Debian)) id 1EuUve-0006xM-00; Thu, 05 Jan 2006 14:13:18 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Message-ID: <17341.7017.645020.848097@gargle.gargle.HOWL> Date: Thu, 5 Jan 2006 14:13:13 +0100 To: Tom Wilkie Cc: caml-list@yquem.inria.fr Subject: Re: [Caml-list] Strange OCaml bug In-Reply-To: <9ADE6708-9011-43CA-9774-66090B9A354F@cam.ac.uk> References: <9ADE6708-9011-43CA-9774-66090B9A354F@cam.ac.uk> X-Mailer: VM 7.19 under Emacs 21.4.1 From: Jean-Christophe Filliatre X-Virus-Scanned: by amavisd-new at lri.fr X-Miltered: at concorde with ID 43BD1B8D.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; caml-list:01 ocaml:01 bug:01 filliatre:01 filliatr:01 lri:01 utils:01 filliatre:01 lri:01 filliatr:01 ocaml:01 3.08.4:01 datatypes:01 byte:01 modular:01 X-Spam-Checker-Version: SpamAssassin 3.0.3 (2005-04-27) on yquem.inria.fr X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=none autolearn=disabled version=3.0.3 Hello, I gave it a quick look and it seems that your problem comes from some lack of flushing when writing strings into files. I rewrite your File_utils.write function into ====================================================================== let write: file -> string -> unit = let f s text = let c = open_out (Filename.concat !name s) in output_string c text; close_out c in ... ====================================================================== and it now works fine apparently. Hope this helps, -- Jean-Christophe Filliātre (http://www.lri.fr/~filliatr) Tom Wilkie writes: > Dear all > > This is my first post, so I'm sorry of this is a bit unusual or not > what this mailing list is for. I've googled and search mailing list > archive, but didn't find anything. I'm using OCaml (version 3.08.4) > on my PowerBook, Mac OS 10.4.3, to develop my Dissertation, and have > run into a big problem, which I can't find a solution to... > > The project is a tool for language writers. You give it a language > defn in a made up meta language (test.ott), and it spits out yacc, > lex, ocaml datatypes (based on sugar and the ocfg tool by Stephen > Tse) and some code to calculate the binding of variables within > expressions (similar to alphaCaml, but not). > > The project is in its early stages, lots more work to do, but here is > the problem at the mo: > > When I add some code (which typechecks and compiles correctly) the > tool generates empty files. If I then comment out this code, the > files are back again. The code is in generate_alpha.ml, lines > 207-212, and this files has nothing to do with the generated Yacc or > Lex. Very strange. I've tried compiling it to byte code and native, > to no avail. The project is very modular, those files beginning with > yacc_* generate yacc, lex_* generate lex and so on... I even made it > spit the code generated out to the terminal, and its there! It just > doesn't write to the file! Is there a problem on OS X with writing > files? > > If any one has any ideas, please reply! this is a show stopper for > me. I've attached my project, to build it with a quick test to > highlight the problem, untar and do a: > > make test > > And it compiles and works fine. Uncomment the lines in > generate_alpha.ml, type > > make test > > and most of the files the tool generates are empty!! (look in test/) > > If you put VERSION=NATIVE on the make cmd line then it will compile > with ocamlopt. Same results on my computer. > > Any help would be much appreciated! > > Cheers > > Tom > > _______________________________________________ > Caml-list mailing list. Subscription management: > http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list > Archives: http://caml.inria.fr > Beginner's list: http://groups.yahoo.com/group/ocaml_beginners > Bug reports: http://caml.inria.fr/bin/caml-bugs