From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 28832 invoked by alias); 3 Apr 2009 19:06:05 -0000 Received: (qmail 28222 invoked by uid 22791); 3 Apr 2009 19:06:02 -0000 X-SWARE-Spam-Status: No, hits=-2.5 required=5.0 tests=AWL,BAYES_00 X-Spam-Check-By: sourceware.org Received: from mail3.caviumnetworks.com (HELO mail3.caviumnetworks.com) (12.108.191.235) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Fri, 03 Apr 2009 19:05:56 +0000 Received: from exch4.caveonetworks.com (Not Verified[192.168.16.23]) by mail3.caviumnetworks.com with MailMarshal (v6,2,2,3503) id ; Fri, 03 Apr 2009 15:05:30 -0400 Received: from exch4.caveonetworks.com ([192.168.16.23]) by exch4.caveonetworks.com with Microsoft SMTPSVC(6.0.3790.3959); Fri, 3 Apr 2009 12:04:31 -0700 Received: from dd1.caveonetworks.com ([64.169.86.201]) by exch4.caveonetworks.com with Microsoft SMTPSVC(6.0.3790.3959); Fri, 3 Apr 2009 12:04:31 -0700 Message-ID: <49D65DBF.7050408@caviumnetworks.com> Date: Fri, 03 Apr 2009 19:06:00 -0000 From: David Daney User-Agent: Thunderbird 2.0.0.21 (X11/20090320) MIME-Version: 1.0 To: Stephen Kell CC: Bryce McKinlay , Andrew Haley , java@gcc.gnu.org Subject: Re: CNI and interface methods References: <20090402193827.GD4939@font.cl.cam.ac.uk> <49D5CAD4.8040700@redhat.com> <7230133d0904030328o55069f0do9147f879bcbd5e4f@mail.gmail.com> <20090403185355.1ba66c55@ernest-2.christs.cam.ac.uk> In-Reply-To: <20090403185355.1ba66c55@ernest-2.christs.cam.ac.uk> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-IsSubscribed: yes Mailing-List: contact java-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: java-owner@gcc.gnu.org X-SW-Source: 2009-04/txt/msg00015.txt.bz2 Stephen Kell wrote: > (whereas I'd been > worried that maybe some multiple-inheritance-style pointer adjustment > was not being done and was causing the segfaults I was seeing). > GCJ doesn't use C++ style multiple inheritance to implement interfaces. The initialization of the interface dispatch tables is done at runtime by some somewhat trick code. Actually I am surprised that you can call interface methods from CNI. You learn something new everyday. David Daney