From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@sympa.inria.fr Delivered-To: caml-list@sympa.inria.fr Received: from mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by sympa.inria.fr (Postfix) with ESMTPS id AE22E7F6CC for ; Thu, 5 Feb 2015 21:52:44 +0100 (CET) Received-SPF: None (mail3-smtp-sop.national.inria.fr: no sender authenticity information available from domain of david.baelde@gmail.com) identity=pra; client-ip=209.85.214.178; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="david.baelde@gmail.com"; x-sender="david.baelde@gmail.com"; x-conformance=sidf_compatible Received-SPF: Pass (mail3-smtp-sop.national.inria.fr: domain of david.baelde@gmail.com designates 209.85.214.178 as permitted sender) identity=mailfrom; client-ip=209.85.214.178; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="david.baelde@gmail.com"; x-sender="david.baelde@gmail.com"; x-conformance=sidf_compatible; x-record-type="v=spf1" Received-SPF: None (mail3-smtp-sop.national.inria.fr: no sender authenticity information available from domain of postmaster@mail-ob0-f178.google.com) identity=helo; client-ip=209.85.214.178; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="david.baelde@gmail.com"; x-sender="postmaster@mail-ob0-f178.google.com"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A0BmAQDM19NUm7LWVdFag1hZBIJ9tAOLTYVvAoEiB0MBAQEBAREBAQEBAQYLCwkULoQNAQEEEhEdARsUCQEDDAYFCw0CAiYCAiEBAREBBQEcBhMih3YBAxENtAk+MYsugWuCd4snChknDVSEdgEBAQcBAQEBARcBBQ6BE4wtHYFaMweCaIFBBZJog2MzgUaBJyaLHoQ2EiOBDAmCJByBUT0xAQGCQAEBAQ X-IPAS-Result: A0BmAQDM19NUm7LWVdFag1hZBIJ9tAOLTYVvAoEiB0MBAQEBAREBAQEBAQYLCwkULoQNAQEEEhEdARsUCQEDDAYFCw0CAiYCAiEBAREBBQEcBhMih3YBAxENtAk+MYsugWuCd4snChknDVSEdgEBAQcBAQEBARcBBQ6BE4wtHYFaMweCaIFBBZJog2MzgUaBJyaLHoQ2EiOBDAmCJByBUT0xAQGCQAEBAQ X-IronPort-AV: E=Sophos;i="5.09,525,1418079600"; d="scan'208";a="99036191" Received: from mail-ob0-f178.google.com ([209.85.214.178]) by mail3-smtp-sop.national.inria.fr with ESMTP/TLS/RC4-SHA; 05 Feb 2015 21:52:43 +0100 Received: by mail-ob0-f178.google.com with SMTP id uz6so9359916obc.9 for ; Thu, 05 Feb 2015 12:52:42 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type:content-transfer-encoding; bh=hhMEHXJ4Ph/A5i4dpsFYSbaA3wsikWUbauCqLJx0QlQ=; b=icvbsIlhEKp4PmnS5PdjGCQ29PY2z+YvcHgnJ3Bg/v3GHua8y687dDIzSV09KYcvfS X1ib4oGD4Bc6M2ju8BceRynwEvCpnhci3CLLPXg6JCijBQhhEC/9uIq/yONwNrky3ed2 m82wc4ErmUusfoVEVuz8jwv5Z75mtbpkYJ74iMfNAh+d2e+iabQ30M9TiBN8+l+GR0mC y1ZVOzv1OC5+D+qOkZftrvHbDRaF+RjSCiM+g1dkU0ThYcN7EtHqZAnLeO1E6UA3KlnL VS4lo0jBpgl36hF6EFvd+JkgODq6xWc76g3y7+/mhXU6d048LuPYl/hFzggme9zoqkje 8lFA== X-Received: by 10.60.139.1 with SMTP id qu1mr8993oeb.83.1423169562308; Thu, 05 Feb 2015 12:52:42 -0800 (PST) MIME-Version: 1.0 Received: by 10.202.83.202 with HTTP; Thu, 5 Feb 2015 12:52:22 -0800 (PST) In-Reply-To: <990B49F8-A93F-491F-9421-02BF480FE429@gmail.com> References: <20150108133111.GA3745@pl-59055.rocqadm.inria.fr> <54AE8A9C.5090304@glondu.net> <20150108153342.GB4890@frosties> <171D9BA6-40AA-4B44-BA06-24AE4A156715@gmail.com> <5953C6BC82FE49A593A4FD68F7343657@erratique.ch> <990B49F8-A93F-491F-9421-02BF480FE429@gmail.com> From: David Baelde Date: Thu, 5 Feb 2015 21:52:22 +0100 Message-ID: To: yoann padioleau Cc: Arnaud Spiwack , =?UTF-8?Q?Daniel_B=C3=BCnzli?= , caml users Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Subject: Re: [Caml-list] Detecting dead code, discovering a project's structure... Hi Sebastien and everybody, Another (late, but maybe useful) suggestion is to look at bisect: http://bisect.x9c.fr/ It's not a static analysis but a coverage checker. Still, it'll show you entry points, and also dead code, on some example runs. I've tried it recently (on a medium pure OCaml tool) and found it surprisingly easy to use. Cheers, David On Thu, Jan 29, 2015 at 7:24 AM, yoann padioleau w= rote: > Yes in the configure script cmt is enabled only for > certain ocaml versions. > The problem is that the caml AST format (stored in the .cmt) has changed = in > every versions =E2=80=A6 I would have hoped for a more > stable type. > > #TODO: not yet ported to 4.02 > if($ocaml_version >=3D 4000 && $ocaml_version < 4020) { > $cmt=3D1; > > > On Jan 23, 2015, at 6:52 AM, Arnaud Spiwack > wrote: > > No, I actually just downloaded the sources and compiled them. Maybe it's > because I compiled pfff with ocaml 4.02.1, I notice there isn't a package > for pfff in the corresponding opam switch. I'll have to try other version= s. > > On 23 January 2015 at 15:26, Daniel B=C3=BCnzli > wrote: >> >> >> >> Le vendredi, 23 janvier 2015 =C3=A0 15:02, Arnaud Spiwack a =C3=A9crit : >> >> > I'm confused. I've got a version of pfff compiled from today's github >> > version. I get the following: >> > >> > $ codegraph -lang cmt -build . >> > Fatal error: exception Failure("language not supported: cmt") >> >> Did you get it by pinning opam ? This may explain: >> >> >> https://github.com/ocaml/opam-repository/blob/master/packages/pfff/pfff.= 0.27.3/opam#L5 >> >> Best, >> >> Daniel >> >> >> > > --=20 David