From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on yquem.inria.fr X-Spam-Level: X-Spam-Status: No, score=0.2 required=5.0 tests=AWL autolearn=disabled version=3.1.3 X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by yquem.inria.fr (Postfix) with ESMTP id 68361BC37 for ; Thu, 18 Jun 2009 15:27:39 +0200 (CEST) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AqIEAL7dOUpYvxGE/2dsb2JhbACBUM9hhAgF X-IronPort-AV: E=Sophos;i="4.42,245,1243807200"; d="scan'208";a="29764361" Received: from www.rastageeks.org (HELO mail.rastageeks.org) ([88.191.17.132]) by mail3-smtp-sop.national.inria.fr with ESMTP; 18 Jun 2009 15:27:39 +0200 Received: from leonard.localnet (sphinx.lix.polytechnique.fr [129.104.11.1]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mail.rastageeks.org (Postfix) with ESMTPSA id E853D27B12 for ; Thu, 18 Jun 2009 15:27:38 +0200 (CEST) From: Romain Beauxis To: caml-list@yquem.inria.fr Subject: Re: [Caml-list] Uncaught Unix_error. Date: Thu, 18 Jun 2009 15:28:20 +0200 User-Agent: KMail/1.11.4 (Linux/2.6.29-1-amd64; KDE/4.2.4; x86_64; ; ) References: <200906181416.39314.toots@rastageeks.org> <4A3A3E58.1040300@glondu.net> In-Reply-To: <4A3A3E58.1040300@glondu.net> MIME-Version: 1.0 Content-Type: Text/Plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Disposition: inline Message-Id: <200906181528.20690.toots@rastageeks.org> X-Spam: no; 0.00; uncaught:01 dynlink:01 dependencies:01 exn:01 runtime:01 2009:98 mitigate:98 threads:01 unix:01 unix:01 caml-list:01 exceptions:01 modules:02 modules:02 restrict:02 Le jeudi 18 juin 2009 15:17:12, St=E9phane Glondu a =E9crit : > > We believe that the issue is raised because the module that uses > > Unix.read is compiled with one of unix or threads and the application > > using that module with the other one. > > Such errors can also happen if you link the (same) Unix module twice: > the exceptions raised by the first instance are not catchable by > anything linked after the second instance. This can happen quite easily, > especially if you use Dynlink. In general, having two modules with the > same name in one application is a bad idea. Yes. However, when using external modules, it is probably not always possib= le=20 to restrict this since two dependencies may have been compiled against modu= les=20 with the same name. It should be possible to mitigate this by making the exn value non-global i= n=20 the C code. It do not think it will have strong consequences in term of=20 runtime efficiency. Romain