Article View: gnu.g++.bug
Article #1330inline friends misbehave in 2.3.3
From: Tom Vijlbrief
Date: Tue, 05 Jan 1993 16:27
Date: Tue, 05 Jan 1993 16:27
65 lines
2599 bytes
2599 bytes
Inline friends cause multiple defineds in g++2.3.3
2.2.2 worked ok......
Note:
ld: /usr/tmp/cca007182.o: _showit__Fv: multiply defined
in the following script
Script started on Tue Jan 5 17:24:32 1993
bash$ cat bug.cc
#include <stdio.h>
class demo {
public:
friend void showit() { fprintf(stderr, "show it\n"); }
};
main()
{
demo *d= new demo();
showit();
}
bash$ cat bug2.cc
#include <stdio.h>
class demo {
public:
friend void showit() { fprintf(stderr, "show it\n"); }
};
main2()
{
demo *d= new demo();
showit();
}
bash$ g++ bug.cc bug2.cc -v
Reading specs from /usr/local/lib/gcc-lib/sparc-sun-sunos4.1/2.3.3/specs
gcc version 2.3.3
/usr/local/lib/gcc-lib/sparc-sun-sunos4.1/2.3.3/cpp -lang-c++ -v -undef -D__GNUC__=2 -D__GNUG__=2 -D__cplusplus -Dsparc -Dsun -Dunix -D__sparc__ -D__sun__ -D__unix__ -D__sparc -D__sun -D__unix bug.cc /usr/tmp/cca00718.i
GNU CPP version 2.3.3 (sparc)
/usr/local/lib/gcc-lib/sparc-sun-sunos4.1/2.3.3/cc1plus /usr/tmp/cca00718.i -quiet -dumpbase bug.cc -version -o /usr/tmp/cca00718.s
GNU C++ version 2.3.3 (sparc) compiled by GNU C version 2.3.3.
as -o /usr/tmp/cca007181.o /usr/tmp/cca00718.s
/usr/local/lib/gcc-lib/sparc-sun-sunos4.1/2.3.3/cpp -lang-c++ -v -undef -D__GNUC__=2 -D__GNUG__=2 -D__cplusplus -Dsparc -Dsun -Dunix -D__sparc__ -D__sun__ -D__unix__ -D__sparc -D__sun -D__unix bug2.cc /usr/tmp/cca00718.i
GNU CPP version 2.3.3 (sparc)
/usr/local/lib/gcc-lib/sparc-sun-sunos4.1/2.3.3/cc1plus /usr/tmp/cca00718.i -quiet -dumpbase bug2.cc -version -o /usr/tmp/cca00718.s
GNU C++ version 2.3.3 (sparc) compiled by GNU C version 2.3.3.
bug2.cc: In function `int main2 ()':
bug2.cc:13: warning: control reaches end of non-void function
as -o /usr/tmp/cca007182.o /usr/tmp/cca00718.s
/usr/local/lib/gcc-lib/sparc-sun-sunos4.1/2.3.3/ld -e start -dc -dp /lib/crt0.o -L/usr/local/lib/gcc-lib/sparc-sun-sunos4.1/2.3.3 -L/usr/local/lib /usr/tmp/cca007181.o /usr/tmp/cca007182.o -lg++ -lgcc -lc -lgcc
ld: /usr/tmp/cca007182.o: _showit__Fv: multiply defined
collect: /usr/bin/ld returned 2 exit status
bash$ exit
script done on Tue Jan 5 17:25:16 1993
Technical Details
Message-ID:
<C0E32o.LK@izf.tno.nl>Path:
arc1-ca.pugleaf.net!sparky!uunet!zaphod.mps.ohio-state.edu!cis.ohio-state.edu!izfcs.izf.tno.nl!tomShow Full Headers
Complete Article Headers
Newsgroups: gnu.g++.bug Path: arc1-ca.pugleaf.net!sparky!uunet!zaphod.mps.ohio-state.edu!cis.ohio-state.edu!izfcs.izf.tno.nl!tom From: tom@izfcs.izf.tno.nl (Tom Vijlbrief) Subject: inline friends misbehave in 2.3.3 Message-ID: <C0E32o.LK@izf.tno.nl> Sender: gnulists@ai.mit.edu Organization: TNO Institute for Perception Distribution: gnu Date: Tue, 5 Jan 1993 16:27:59 GMT Approved: bug-g++@prep.ai.mit.edu Lines: 66