Debian Bug report logs - #22513
g++ problem with -fno-implement-inlines

version graph

Package: g++; Maintainer for g++ is Debian GCC Maintainers <debian-gcc@lists.debian.org>; Source for g++ is src:gcc-defaults (PTS, buildd, popcon).

Reported by: Avery Pennarun <apenwarr@worldvisions.ca>

Date: Sat, 16 May 1998 19:33:03 UTC

Severity: fixed

Found in version 2.90.28-0.1

Done: Matthias Klose <doko@cs.tu-berlin.de>

Bug is archived. No further changes may be made.

Forwarded to egcs-bugs@cygnus.com

Toggle useless messages

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to debian-bugs-dist@lists.debian.org, Galen Hazelwood <galenh@micron.net>:
Bug#22513; Package g++. (full text, mbox, link).


Acknowledgement sent to Avery Pennarun <apenwarr@worldvisions.ca>:
New bug report received and forwarded. Copy sent to Galen Hazelwood <galenh@micron.net>. (full text, mbox, link).


Message #5 received at submit@bugs.debian.org (full text, mbox, reply):

From: Avery Pennarun <apenwarr@worldvisions.ca>
To: submit@bugs.debian.org
Subject: g++ problem with -fno-implement-inlines
Date: Sat, 16 May 1998 15:27:03 -0400
Package: g++
Version: 2.90.28-0.1


Hi there,

I'm including a short program below.  It demonstrates two bugs in Debian's
current gcc/eg++ system.

(1) There is a problem with -fno-implement-inlines:

	~ $ g++ -O6 -fno-implement-inlines foo.cc
	/tmp/cca094331.o(.rodata+0x34): undefined reference to `B::~B(void)'
	collect2: ld returned 1 exit status
	
	~ $ g++ -O6 foo.cc
		(success)

(2) libgcc in the 'gcc' installation is incompatible with the egcs one:

	~ $ g++ foo.cc -c
	
	~ $ gcc foo.o
	foo.o: In function `B::B(void)':
	foo.o(.text+0xfd): undefined reference to `_eh_pc'
	foo.o(.text+0x106): undefined reference to `_throw'
	foo.o(.text+0x131): undefined reference to `terminate(void)'
	foo.o: In function `Main':
	foo.o(.text+0x1f0): undefined reference to `_eh_pc'
	foo.o(.text+0x1f9): undefined reference to `_throw'
	foo.o(.text+0x202): undefined reference to `_eh_pc'
	foo.o(.text+0x20b): undefined reference to `_throw'
	foo.o(.text+0x231): undefined reference to `terminate(void)'
	foo.o: In function `B type_info function':
	foo.o(.text+0x273): undefined reference to `_rtti_si'
	foo.o: In function `A type_info function':
	foo.o(.text+0x2d7): undefined reference to `_rtti_user'

	~ $ gcc foo.o /usr/lib/gcc-lib/i486-linux/egcs-2.90.28/libgcc.a
		(success)

The source code for my test program follows.  Thanks for any help you can
provide.

Have fun,

Avery


/* foo.cc */

#include <stdio.h>

class A
{
public:
    A();
    virtual ~A();
};

class B : public A
{
public:
    B();
    virtual void chicken();
};


A::A()
{
    printf("Hello, A\n");
}


A::~A()
{
    printf("Goodbye, A\n");
}


B::B()
{
    printf("Hello, B\n");
}


void B::chicken()
{
    printf("B chicken\n");
}


int main()
{
    B b;
    b.chicken();
    return 0;
}


Information forwarded to debian-bugs-dist@lists.debian.org, Galen Hazelwood <galenh@micron.net>:
Bug#22513; Package g++. (full text, mbox, link).


Acknowledgement sent to Dirk Eddelbuettel <edd@debian.org>:
Extra info received and forwarded to list. Copy sent to Galen Hazelwood <galenh@micron.net>. (full text, mbox, link).


Message #10 received at submit@bugs.debian.org (full text, mbox, reply):

From: Dirk Eddelbuettel <edd@debian.org>
To: Avery Pennarun <apenwarr@worldvisions.ca>, 22513@bugs.debian.org
Cc: submit@bugs.debian.org
Subject: Re: Bug#22513: g++ problem with -fno-implement-inlines
Date: Sat, 16 May 1998 16:08:00 -0400 (EDT)
  Avery> Package: g++ 
  Avery> Version: 2.90.28-0.1

[...]

  Avery> (2) libgcc in the 'gcc' installation is incompatible with the egcs
  Avery> one:

[stuff deleted which shows that gcc doesn't find the C++ libs] 

You want egcc as you're mixing the front-end (egcc) with the C++ backend :

	edd@miles:/tmp> egcc foo.cc -o foo
	edd@miles:/tmp> ./foo
	Hello, A
	Hello, B
	B chicken
	Goodbye, A

I was bitten by the same thing last night with a new Octave built. We have
'gcc' from gcc-2.7.x, and 'egcc' from egcs. If you mix C and C++ (and
Fortran), you probably want 'CC=egcc' in your Makefile. At least, that's what
helped me with Octave.

-- 
mailto:edd@debian.org              According to the latest official figures, 
http://rosebud.ml.org/~edd      43% of all statistics are totally worthless.


Information forwarded to debian-bugs-dist@lists.debian.org, Galen Hazelwood <galenh@micron.net>:
Bug#22513; Package g++. (full text, mbox, link).


Acknowledgement sent to Dirk Eddelbuettel <edd@debian.org>:
Extra info received and forwarded to list. Copy sent to Galen Hazelwood <galenh@micron.net>. (full text, mbox, link).


Information forwarded to debian-bugs-dist@lists.debian.org, Galen Hazelwood <galenh@micron.net>:
Bug#22513; Package g++. (full text, mbox, link).


Acknowledgement sent to Avery Pennarun <apenwarr@worldvisions.ca>:
Extra info received and forwarded to list. Copy sent to Galen Hazelwood <galenh@micron.net>. (full text, mbox, link).


Message #20 received at 22513@bugs.debian.org (full text, mbox, reply):

From: Avery Pennarun <apenwarr@worldvisions.ca>
To: Dirk Eddelbuettel <edd@debian.org>, 22513@bugs.debian.org
Subject: Re: Bug#22513: g++ problem with -fno-implement-inlines
Date: Sat, 16 May 1998 16:54:55 -0400
On Sat, May 16, 1998 at 04:08:00PM -0400, Dirk Eddelbuettel wrote:

>   Avery> Package: g++ 
>   Avery> Version: 2.90.28-0.1
> 
> [...]
> 
>   Avery> (2) libgcc in the 'gcc' installation is incompatible with the egcs
>   Avery> one:
> 
> [stuff deleted which shows that gcc doesn't find the C++ libs] 
> 
> You want egcc as you're mixing the front-end (egcc) with the C++ backend :
> 
> 	edd@miles:/tmp> egcc foo.cc -o foo
> 	edd@miles:/tmp> ./foo
> 	Hello, A
> 	Hello, B
> 	B chicken
> 	Goodbye, A

Perhaps, but I think it's a bug that I should have to do this.  Normal
people (not Debian maintainers) will be trying to compile things with the
Debian compiler setup, and this is needlessly(?) confusing.

Thanks for the response though.  The solution I'm currently using is even
hackier:  I edited /usr/lib/gcc-lib/i486-linux/2.7.2.3/specs to link in the
egcs-2.90.28 version of libgcc.a, as well as its own.  This eliminates the
undefined references.

It should be allowable to compile an object file with g++ and then link it
with gcc, as long as the stdc++ features aren't in use.  It always worked
before.  I do this in my programs to avoid linking uselessly with libstdc++.

Thanks for your message,

Avery


Noted your statement that bug has been forwarded to egcs-bugs@cygnus.com. Request was from jdassen@wi.leidenuniv.nl to control@bugs.debian.org. (full text, mbox, link).


Information forwarded to debian-bugs-dist@lists.debian.org, Galen Hazelwood <galenh@micron.net>:
Bug#22513; Package g++. (full text, mbox, link).


Acknowledgement sent to list@ListMe.com:
Extra info received and forwarded to list. Copy sent to Galen Hazelwood <galenh@micron.net>. (full text, mbox, link).


Message #27 received at 22513@bugs.debian.org (full text, mbox, reply):

From: list@ListMe.com
To: 22513@bugs.debian.org
Subject: Your Search Engine Listing
Date: Wed, 29 Jul 1998 18:27:51 -0400
To: 22513@bugs.debian.org 

     Is your site listed with the top search engines?  ListMe will 
     list you with 50 search engines and indexes for $90. 
     Satisfaction guaranteed! 

Search engines are the only way most people have to find internet sites.
But if your site is not listed, no one will find it.

ListMe will submit your site for listing in the top 50 search engines for $90.

Here's how it works:

1.  Complete and return the form below.

2.  We'll post your site to 50 search engines within two business days, and 
we'll send you a submission report when we're finished.

3.  Pay nothing now.  We'll send you an invoice after we've completed the posting.
Your satisfaction is guaranteed!

These are permanent listings.  The $90 is a one-time fee.

WHICH SEARCH ENGINES?

Here's the list:

Infoseek, Lycos, Excite, Alta Vista,  Galaxy, HotBot, Magellan, Open 
Text Web Index, Web Crawler, BizWeb, New Riders WWW Yellow Pages, 
YelloWWWeb, True North, Northern Light, LinkMonster, The Weekly Bookmark, 
Seven Wonders, Jayde Online Directory, Starting Point, Web 100, Web Walker, 
New Page List, PeekABoo, One World Plaza, PageHost A-Z, Net-Announce, 
Project Cool, Where2Go, World Wide Business Yellow Pages, Sserv, 
Wow! Web Wonders!, WWW Worm, JumpCity, The Galactic Galaxy, TurnPike, 
Unlock:The Information Exchange, Your WebScout, Manufacturers Information 
Network, Net Happenings, Net Mall, Web World  Internet Directory, 
InfoSpace, BC Internet, BizCardz Business Directory, Scrub The Web,  
WebVenture, Hotlist, What's New, WhatUSeek, JumpLink, Linkcentre Directory. 

ORDER FORM (or use our convenient on-line order form at "www.listme.com")

Hit the REPLY button on your e-mail program and fill out the following information.
 (This information will be posted to the search engines/indexes):


Contact name: 
Company Name:
Address:
City:              State/Prov:     Zip/Postal Code: 
Telephone: 
Fax: 
Email address: 

Contact e-mail address (in case we have questions about this order): 

URL:  http://
Site Title: 
Description (250 characters): 

Key words (250 characters, in descending order of importance):

If  billing a different address, please complete the following:

Addressee: 
Company Name:
Address:
City:              State/Prov:     Zip/Postal Code: 
Telephone: 
Fax: 
Email address: 

TERMS

Terms are net 15 days from date of invoice.

______________________________________________________________________
ListMe, Inc.
1127 High Ridge Road - Suite 184
Stamford CT 06905
Phone: (203) 326-8519
Fax:   (203) 322-4505
E-mail: list@listme.com
URL: www.listme.com


Information forwarded to debian-bugs-dist@lists.debian.org, Galen Hazelwood <galenh-egcs@debian.org>:
Bug#22513; Package g++. (full text, mbox, link).


Acknowledgement sent to Matthias Klose <doko@cs.tu-berlin.de>:
Extra info received and forwarded to list. Copy sent to Galen Hazelwood <galenh-egcs@debian.org>. (full text, mbox, link).


Message #32 received at 22513@bugs.debian.org (full text, mbox, reply):

From: Matthias Klose <doko@cs.tu-berlin.de>
To: 22513@bugs.debian.org, Avery Pennarun <apenwarr@worldvisions.ca>
Subject: Debian bug #22513 partly fixed.
Date: Sun, 1 Nov 1998 20:02:09 +0100 (MET)
The first part of this bug is fixed in the egcs-1.1.1 prerelease (see
http://master.debian.org/~doko/egcs-i386).

Not sure with the second part. I added a paragraph to the
README.Debian file, which already describes this situation.

Not sure if this bug can be closed as long as Debian provides two
compiler versions. Another solution would be the editing of the gcc
specs; but this would mean a new gcc27 package with every egcs
release.


Severity set to `fixed'. Request was from Matthias Klose <doko@debian.org> to control@bugs.debian.org. (full text, mbox, link).


Reply sent to Matthias Klose <doko@cs.tu-berlin.de>:
You have taken responsibility. (full text, mbox, link).


Notification sent to Avery Pennarun <apenwarr@worldvisions.ca>:
Bug acknowledged by developer. (full text, mbox, link).


Message #39 received at 22513-done@bugs.debian.org (full text, mbox, reply):

From: Matthias Klose <doko@cs.tu-berlin.de>
To: 42532-done@bugs.debian.org, 35906-done@bugs.debian.org, 39098-done@bugs.debian.org, 36182-done@bugs.debian.org, 42584-done@bugs.debian.org, 42585-done@bugs.debian.org, 42602-done@bugs.debian.org, 42742-done@bugs.debian.org, 42743-done@bugs.debian.org, 43002-done@bugs.debian.org, 42622-done@bugs.debian.org, 21122-done@bugs.debian.org, 22513-done@bugs.debian.org, 28417-done@bugs.debian.org, 41302-done@bugs.debian.org, 41313-done@bugs.debian.org, 40659-done@bugs.debian.org
Subject: Fixed in gcc-2.95.1-0pre1
Date: Mon, 16 Aug 1999 10:43:16 +0200 (MET DST)
These bugs are fixed in the gcc-2.95.1-0pre1 and related g++,
libstdc++, cpp packages. Binary packages are currently uploaded for
the i386-hurd architecture.


Send a report that this bug log contains spam.


Debian bug tracking system administrator <owner@bugs.debian.org>. Last modified: Sat May 4 21:00:56 2024; Machine Name: buxtehude

Debian Bug tracking system

Debbugs is free software and licensed under the terms of the GNU Public License version 2. The current version can be obtained from https://bugs.debian.org/debbugs-source/.

Copyright © 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson, 2005-2017 Don Armstrong, and many other contributors.