From mboxrd@z Thu Jan 1 00:00:00 1970 Received: by pauillac.inria.fr; Mon, 30 May 94 19:20:38 +0200 Received: from margaux.inria.fr by pauillac.inria.fr; Mon, 30 May 94 19:02:07 +0200 Received: from concorde.inria.fr by margaux.inria.fr, Mon, 30 May 1994 19:02:06 +0200 Received: from stroma.dcs.ed.ac.uk (mmdf@stroma.dcs.ed.ac.uk [129.215.160.108]) by concorde.inria.fr (8.6.9/8.6.9) with SMTP id TAA16703 for ; Mon, 30 May 1994 19:02:04 +0200 Received: from whalsay.dcs.ed.ac.uk by dcs.ed.ac.uk id aa07209; 30 May 94 17:57 BST Date: Mon, 30 May 1994 17:57:00 +0000 Message-Id: <2283.9405301657@whalsay.dcs.ed.ac.uk> From: Christophe Raffalli Sender: weis@pauillac.inria.fr To: Xavier.Leroy@inria.fr Cc: Judicael.Courant@lip.ens-lyon.fr, caml-list@margaux.inria.fr In-Reply-To: <9405300853.AA03760@pauillac.inria.fr> (Xavier.Leroy@inria.fr) Subject: Irrelevant variables in patterns > Ce n'est pas un bug lorsqu'on veut faire de la "finalisation": Cela signifie que l'on doit avoir un warning quand on capture toute les exceptions et que l'on ne les "reraisent" pas ex: let oc = open_out "foo" in try ...; close_out oc with exc -> close_out oc; sys__remove "foo"; raise exc pas de warning ... let oc = open_out "foo" in try ...; close_out oc with exc -> myclose "foo" exc pas de warning (je ne sais pas vraiment) ? Si l'on ne mets pas de warning dans ce cas, Chet sera content, car son example n'en produira pas. let oc = open_out "foo" in try ...; close_out oc with exc -> myclose "foo" un warning. let oc = open_out "foo" in try ...; close_out oc with _ -> myclose "foo" une erreur ! (de maniere generale le "_" ne devrait pas etre autoriser pour les exceptions). cela devrait attrapper quelques bugs. Cela serait vraiment bien (pour moi) si la prochaine version de caml-light pouvait avoir des warnings bien pense de ce type que l'on peut activer par une option de compilation. Les deux warnings que je voudrais vraiment pouvoir activier (ce genre de warning devrait plutot est inactif par defaut ?) sont: - variables non utilisees (pattern ou definition de function) - capture de toutes les exceptions sans chances de les relever.