From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 32143 invoked by alias); 12 Dec 2001 06:46:03 -0000 Mailing-List: contact gcc-prs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-prs-owner@gcc.gnu.org Received: (qmail 32080 invoked by uid 71); 12 Dec 2001 06:46:01 -0000 Resent-Date: 12 Dec 2001 06:46:01 -0000 Resent-Message-ID: <20011212064601.32079.qmail@sources.redhat.com> Resent-From: gcc-gnats@gcc.gnu.org (GNATS Filer) Resent-To: nobody@gcc.gnu.org Resent-Cc: gcc-prs@gcc.gnu.org, gcc-bugs@gcc.gnu.org, java-prs@gcc.gnu.org Resent-Reply-To: gcc-gnats@gcc.gnu.org, bryce@waitaki.otago.ac.nz Received:(qmail 30714 invoked by uid 61); 12 Dec 2001 06:40:36 -0000 Message-Id:<20011212064036.30713.qmail@sources.redhat.com> Date: Tue, 11 Dec 2001 22:46:00 -0000 From: bryce@waitaki.otago.ac.nz Reply-To: bryce@waitaki.otago.ac.nz To: gcc-gnats@gcc.gnu.org X-Send-Pr-Version:gnatsweb-2.9.2 (1.1.1.1.2.21) Subject: java/5088: Can't create a java.lang.Object from CNI X-SW-Source: 2001-12/txt/msg00705.txt.bz2 List-Id: >Number: 5088 >Category: java >Synopsis: Can't create a java.lang.Object from CNI >Confidential: no >Severity: serious >Priority: medium >Responsible: unassigned >State: open >Class: sw-bug >Submitter-Id: net >Arrival-Date: Tue Dec 11 22:46:01 PST 2001 >Closed-Date: >Last-Modified: >Originator: Bryce >Release: gcc version 3.1 20011207 (experimental) >Organization: >Environment: >Description: The test case below does not link. $ gcc InvokeCNI.cc -lgcj /tmp/ccoD0wXw.o: In function `main': /tmp/ccoD0wXw.o(.text+0x48): undefined reference to `java::lang::Object::Object()' collect2: ld returned 1 exit status $ nm InvokeCNI.o | grep ObjectC U _ZN4java4lang6ObjectC1Ev $ nm ~/cvs/gcc/build/i686-pc-linux-gnu/libjava/java/lang/Object.o | grep ObjectC 00000030 T _ZN4java4lang6ObjectC2Ev According to the C++ ABI spec: ::= C1 # complete object (in-charge) constructor ::= C2 # base object (not-in-charge) constructor >How-To-Repeat: #include #include int main(int argc, char *argv) { using namespace java::lang; _Jv_CreateJavaVM (NULL); _Jv_AttachCurrentThread (NULL, NULL); new java::lang::Object (); } >Fix: >Release-Note: >Audit-Trail: >Unformatted: