From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 117645 invoked by alias); 3 Mar 2016 20:31:42 -0000 Mailing-List: contact fortran-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: fortran-owner@gcc.gnu.org Received: (qmail 117594 invoked by uid 89); 3 Mar 2016 20:31:41 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-0.3 required=5.0 tests=AWL,BAYES_50,RCVD_IN_DNSWL_NONE,RP_MATCHES_RCVD,SPF_PASS autolearn=ham version=3.3.2 spammy=campaign, bite, quietly, pile X-Spam-User: qpsmtpd, 2 recipients X-HELO: mtaout002-public.msg.strl.va.charter.net Received: from mtaout002-public.msg.strl.va.charter.net (HELO mtaout002-public.msg.strl.va.charter.net) (68.114.190.27) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 03 Mar 2016 20:31:25 +0000 Received: from impout003 ([68.114.189.18]) by mtaout002.msg.strl.va.charter.net (InterMail vM.9.00.021.00 201-2473-182) with ESMTP id <20160303203123.JJKK4871.mtaout002.msg.strl.va.charter.net@impout003>; Thu, 3 Mar 2016 14:31:23 -0600 Received: from quattro.localdomain ([96.41.215.23]) by impout003 with charter.net id RYXM1s00P0Wrkg001YXNMs; Thu, 03 Mar 2016 14:31:22 -0600 X-Authority-Analysis: v=2.1 cv=Wu+lMLvv c=1 sm=1 tr=0 a=salB9WdMPIDduBH7JsZfrA==:117 a=salB9WdMPIDduBH7JsZfrA==:17 a=L9H7d07YOLsA:10 a=9cW_t1CCXrUA:10 a=s5jvgZ67dGcA:10 a=N659UExz7-8A:10 a=o6BbAUggettPx_JT4UoA:9 a=pILNOxqGKmIA:10 X-Auth-id: anZkZWxpc2xlQGNoYXJ0ZXIubmV0 Subject: Re: [Patch, fortran] PR69834 - Collision in derived type hashes To: Paul Richard Thomas , "fortran@gcc.gnu.org" , gcc-patches , Dominique Dhumieres , Thomas Koenig References: From: Jerry DeLisle Message-ID: <56D89F19.8010708@charter.net> Date: Thu, 03 Mar 2016 20:31:00 -0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.5.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit X-IsSubscribed: yes X-SW-Source: 2016-03/txt/msg00011.txt.bz2 On 03/03/2016 07:59 AM, Paul Richard Thomas wrote: > Dear All, > > What started out as a provisional kludge, when first working on OOP, > has come back to bite us after 7 years. A collision in derived type > has values has been reported on clf. In principle, as pointed out in > the clf thread, this could mean that existing code might be quietly > confusing dynamic types. Fortunately, this is unlikely because the > error in SELECT TYPE that flagged up this problem might appear or > incorrect fields might be accessed, giving rise to runtime errors. > > The fix uses a new vtable field, '_name' that is loaded with the > value, "typename_scopename", which is used for the cases in SELECT > TYPE and for comparison in SAME_TYPE_AS. I have retained the '_hash' > field for compatibility with existing libraries. It could easily be > removed, if that is preferred, but would require a publicity campaign > to ensure that users recompile their code. > > The changes are sufficiently well described in the ChangeLogs and the > comments in the patch to not warrant further comment. > > I have to confess to not knowing quite what to propose here. My gut > feeling is that we should bite the bullet and the patch should be > applied to trunk and 5-branch. However, I am open, on the grounds > above, to wait until 7.0.0. It does bootstrap and regtest on trunk > with FC23/x86_64. > > Thanks to Dominique for testing an early version of the test and to > Thomas for picking up on the clf thread. > In my very humble opinion, I think you should commit the patch now before release. As I have said before, people know major releases are bleeding edge, bugs if any will be flushed out and can be fixed at 6.2 or 6.3. It is the open nature of our software and the user feedback that makes this all work. (also we know Fortran is not release critical) I tested with my own OOP code which is an adaptation of Metcalf's linked anylist and it works fine. Thats the best I can do and it is fairly complex code. I can send it to you if you would like to have it in your test pile. Regards, Jerry