public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/25908]  New: Multiple definitions of symbol vtables
@ 2006-01-22  0:51 schnetter at aei dot mpg dot de
  2006-01-23 16:19 ` [Bug c++/25908] " pinskia at gcc dot gnu dot org
                   ` (26 more replies)
  0 siblings, 27 replies; 28+ messages in thread
From: schnetter at aei dot mpg dot de @ 2006-01-22  0:51 UTC (permalink / raw)
  To: gcc-bugs

I use gcc (GCC) 4.2.0 20060120 to compile Cactus, a large piece of code
combining C, C++, and Fortran.  I receive many errors from the linker like

/usr/bin/ld: multiple definitions of symbol typeinfo for MPI::Op
/Users/eschnett/Calpha/configs/einstein-orange-gcc-debug/lib/libthorn_Carpet.a(helpers.cc.o)
definition of typeinfo for MPI::Opin section (__DATA,__const)
/Users/eschnett/Calpha/configs/einstein-orange-gcc-debug/lib/libthorn_CarpetAdaptiveRegrid.a(CAR.cc.o)
definition of typeinfo for MPI::Opin section (__DATA,__const)

or

/usr/bin/ld: multiple definitions of symbol vtable for MPI::Op
/Users/eschnett/Calpha/configs/einstein-orange-gcc-debug/lib/libthorn_Carpet.a(helpers.cc.o)
definition of vtable for MPI::Opin section (__DATA,__const)
/Users/eschnett/Calpha/configs/einstein-orange-gcc-debug/lib/libthorn_CarpetAdaptiveRegrid.a(CAR.cc.o)
definition of vtable for MPI::Opin section (__DATA,__const)

(Note that the error messages seem run-together; e.g. "MPI::OPin" seems to
refer to the class "MPI::Op", which is located IN a certain section.)

These errors are not there with gcc (GCC) 4.2.0 20051129.  The code also works
fine on many other architectures.  But with C++, I am not sure what the reason
is.

I have looked on the web, and the gcc PR "[Bug c++/16218] Link problems with
inline virtual function in multiple translation units" seems similar.  At that
time, it apparently was an error in gcc that caused this problem.



I use the linker /usr/bin/ld
Apple Computer, Inc. version cctools-590.18.obj~10

and these C++ classes are defined in LAM MPI 7.0.6-11, which I installed via
fink.


-- 
           Summary: Multiple definitions of symbol vtables
           Product: gcc
           Version: 4.2.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: schnetter at aei dot mpg dot de
 GCC build triplet: powerpc-apple-darwin8.4.0
  GCC host triplet: powerpc-apple-darwin8.4.0
GCC target triplet: powerpc-apple-darwin8.4.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25908


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [Bug c++/25908] Multiple definitions of symbol vtables
  2006-01-22  0:51 [Bug c++/25908] New: Multiple definitions of symbol vtables schnetter at aei dot mpg dot de
@ 2006-01-23 16:19 ` pinskia at gcc dot gnu dot org
  2006-01-23 19:45 ` schnetter at aei dot mpg dot de
                   ` (25 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-01-23 16:19 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from pinskia at gcc dot gnu dot org  2006-01-23 16:19 -------
Do you have a simple example?


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |WAITING


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25908


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [Bug c++/25908] Multiple definitions of symbol vtables
  2006-01-22  0:51 [Bug c++/25908] New: Multiple definitions of symbol vtables schnetter at aei dot mpg dot de
  2006-01-23 16:19 ` [Bug c++/25908] " pinskia at gcc dot gnu dot org
@ 2006-01-23 19:45 ` schnetter at aei dot mpg dot de
  2006-01-23 19:47 ` schnetter at aei dot mpg dot de
                   ` (24 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: schnetter at aei dot mpg dot de @ 2006-01-23 19:45 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from schnetter at aei dot mpg dot de  2006-01-23 19:45 -------
Here is a way to reproduce the error with very little source code, but still
depending on the LAM MPI library.  The actual source code I used consists of
two files, main.cc and sub.cc, which I include here for completeness:

main.cc:
#include <mpi.h>

int
main (int argc, char * argv[])
{
  return 0;
}

sub.cc:
#include <mpi.h>

void
sub ()
{
}



I preprocessed these with "g++ -E", and I attach the results.  When I compile
the preprocessed sources, I get:

$ ~/gcc-new/bin/g++ -o lamtest main.ii sub.ii
/usr/bin/ld: multiple definitions of symbol typeinfo for MPI::Op
/var/tmp//ccFSbBVd.o definition of typeinfo for MPI::Opin section
(__DATA,__const)
/var/tmp//cc8Rm38U.o definition of typeinfo for MPI::Opin section
(__DATA,__const)
/usr/bin/ld: multiple definitions of symbol typeinfo for PMPI::Op
/var/tmp//ccFSbBVd.o definition of typeinfo for PMPI::Opin section
(__DATA,__const)
/var/tmp//cc8Rm38U.o definition of typeinfo for PMPI::Opin section
(__DATA,__const)
/usr/bin/ld: multiple definitions of symbol typeinfo for PMPI::Comm
/var/tmp//ccFSbBVd.o definition of typeinfo for PMPI::Commin section
(__DATA,__const)
/var/tmp//cc8Rm38U.o definition of typeinfo for PMPI::Commin section
(__DATA,__const)

(and many more warnings like that).


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25908


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [Bug c++/25908] Multiple definitions of symbol vtables
  2006-01-22  0:51 [Bug c++/25908] New: Multiple definitions of symbol vtables schnetter at aei dot mpg dot de
                   ` (2 preceding siblings ...)
  2006-01-23 19:47 ` schnetter at aei dot mpg dot de
@ 2006-01-23 19:47 ` schnetter at aei dot mpg dot de
  2006-01-23 19:51 ` [Bug c++/25908] [4.2 Regression] " pinskia at gcc dot gnu dot org
                   ` (22 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: schnetter at aei dot mpg dot de @ 2006-01-23 19:47 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from schnetter at aei dot mpg dot de  2006-01-23 19:47 -------
Created an attachment (id=10716)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=10716&action=view)
Gzipped preprocessed failing source code, part 2


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25908


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [Bug c++/25908] Multiple definitions of symbol vtables
  2006-01-22  0:51 [Bug c++/25908] New: Multiple definitions of symbol vtables schnetter at aei dot mpg dot de
  2006-01-23 16:19 ` [Bug c++/25908] " pinskia at gcc dot gnu dot org
  2006-01-23 19:45 ` schnetter at aei dot mpg dot de
@ 2006-01-23 19:47 ` schnetter at aei dot mpg dot de
  2006-01-23 19:47 ` schnetter at aei dot mpg dot de
                   ` (23 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: schnetter at aei dot mpg dot de @ 2006-01-23 19:47 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from schnetter at aei dot mpg dot de  2006-01-23 19:47 -------
Created an attachment (id=10715)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=10715&action=view)
Gzipped preprocessed failing source code, part 1


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25908


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [Bug c++/25908] [4.2 Regression] Multiple definitions of symbol vtables
  2006-01-22  0:51 [Bug c++/25908] New: Multiple definitions of symbol vtables schnetter at aei dot mpg dot de
                   ` (3 preceding siblings ...)
  2006-01-23 19:47 ` schnetter at aei dot mpg dot de
@ 2006-01-23 19:51 ` pinskia at gcc dot gnu dot org
  2006-01-23 19:52 ` pinskia at gcc dot gnu dot org
                   ` (21 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-01-23 19:51 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from pinskia at gcc dot gnu dot org  2006-01-23 19:51 -------
I think that is enough to reproduce it for now.

Thanks, when my computer (laptop) gets back up and working, I will look into
this.

I think this was caused by the section changes.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |pinskia at gcc dot gnu dot
                   |                            |org
           Keywords|                            |link-failure
            Summary|Multiple definitions of     |[4.2 Regression] Multiple
                   |symbol vtables              |definitions of symbol
                   |                            |vtables
   Target Milestone|---                         |4.2.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25908


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [Bug c++/25908] [4.2 Regression] Multiple definitions of symbol vtables
  2006-01-22  0:51 [Bug c++/25908] New: Multiple definitions of symbol vtables schnetter at aei dot mpg dot de
                   ` (4 preceding siblings ...)
  2006-01-23 19:51 ` [Bug c++/25908] [4.2 Regression] " pinskia at gcc dot gnu dot org
@ 2006-01-23 19:52 ` pinskia at gcc dot gnu dot org
  2006-01-24 20:04 ` pinskia at gcc dot gnu dot org
                   ` (20 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-01-23 19:52 UTC (permalink / raw)
  To: gcc-bugs



-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|WAITING                     |NEW
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2006-01-23 19:52:17
               date|                            |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25908


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [Bug c++/25908] [4.2 Regression] Multiple definitions of symbol vtables
  2006-01-22  0:51 [Bug c++/25908] New: Multiple definitions of symbol vtables schnetter at aei dot mpg dot de
                   ` (5 preceding siblings ...)
  2006-01-23 19:52 ` pinskia at gcc dot gnu dot org
@ 2006-01-24 20:04 ` pinskia at gcc dot gnu dot org
  2006-01-24 20:14 ` pinskia at gcc dot gnu dot org
                   ` (19 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-01-24 20:04 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from pinskia at gcc dot gnu dot org  2006-01-24 20:04 -------
Trying to reduce this failure.  (I can reproduce it on today's compiler).


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25908


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [Bug c++/25908] [4.2 Regression] Multiple definitions of symbol vtables
  2006-01-22  0:51 [Bug c++/25908] New: Multiple definitions of symbol vtables schnetter at aei dot mpg dot de
                   ` (6 preceding siblings ...)
  2006-01-24 20:04 ` pinskia at gcc dot gnu dot org
@ 2006-01-24 20:14 ` pinskia at gcc dot gnu dot org
  2006-01-24 20:20 ` pinskia at gcc dot gnu dot org
                   ` (18 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-01-24 20:14 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #7 from pinskia at gcc dot gnu dot org  2006-01-24 20:14 -------
Reduced testcase:
file1.cc:
class f
{
  virtual void g();
};
inline void f::g()
{}
int sub(void)
{}
file2.cc:
class f
{
  virtual void g();
};
inline void f::g()
{}
int main(void)
{}


------

Now why does this work if I add inline to the method inside the declaration of
the class.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25908


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [Bug c++/25908] [4.2 Regression] Multiple definitions of symbol vtables
  2006-01-22  0:51 [Bug c++/25908] New: Multiple definitions of symbol vtables schnetter at aei dot mpg dot de
                   ` (7 preceding siblings ...)
  2006-01-24 20:14 ` pinskia at gcc dot gnu dot org
@ 2006-01-24 20:20 ` pinskia at gcc dot gnu dot org
  2006-01-24 20:28 ` pinskia at gcc dot gnu dot org
                   ` (17 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-01-24 20:20 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #8 from pinskia at gcc dot gnu dot org  2006-01-24 20:20 -------
Hmm, this testcase works correctly on x86_64-linux-gnu, in that the vtable is
marked as weak.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  GCC build triplet|powerpc-apple-darwin8.4.0   |
   GCC host triplet|powerpc-apple-darwin8.4.0   |
 GCC target triplet|powerpc-apple-darwin8.4.0   |*-*-darwin*


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25908


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [Bug c++/25908] [4.2 Regression] Multiple definitions of symbol vtables
  2006-01-22  0:51 [Bug c++/25908] New: Multiple definitions of symbol vtables schnetter at aei dot mpg dot de
                   ` (8 preceding siblings ...)
  2006-01-24 20:20 ` pinskia at gcc dot gnu dot org
@ 2006-01-24 20:28 ` pinskia at gcc dot gnu dot org
  2006-01-24 21:09 ` [Bug c++/25908] [4.2 Regression] vtables with vague linkage is not being marked as vague on darwin schnetter at aei dot mpg dot de
                   ` (16 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-01-24 20:28 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #9 from pinskia at gcc dot gnu dot org  2006-01-24 20:28 -------
Just to clarify with "gcc (GCC) 4.2.0 20051129", you were able to compile the
example you gave in comment #2?


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25908


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [Bug c++/25908] [4.2 Regression] vtables with vague linkage is not being marked as vague on darwin
  2006-01-22  0:51 [Bug c++/25908] New: Multiple definitions of symbol vtables schnetter at aei dot mpg dot de
                   ` (9 preceding siblings ...)
  2006-01-24 20:28 ` pinskia at gcc dot gnu dot org
@ 2006-01-24 21:09 ` schnetter at aei dot mpg dot de
  2006-01-24 22:53 ` pinskia at gcc dot gnu dot org
                   ` (15 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: schnetter at aei dot mpg dot de @ 2006-01-24 21:09 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #10 from schnetter at aei dot mpg dot de  2006-01-24 21:09 -------
Yes, I am able to compile the code with that version:

$ ~/gcc/bin/g++ --version
g++ (GCC) 4.2.0 20051129 (experimental)

$ ~/gcc/bin/g++ -o lamtest *.ii -L/sw/lib -llammpio -llammpi++ -lmpi -llam


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25908


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [Bug c++/25908] [4.2 Regression] vtables with vague linkage is not being marked as vague on darwin
  2006-01-22  0:51 [Bug c++/25908] New: Multiple definitions of symbol vtables schnetter at aei dot mpg dot de
                   ` (10 preceding siblings ...)
  2006-01-24 21:09 ` [Bug c++/25908] [4.2 Regression] vtables with vague linkage is not being marked as vague on darwin schnetter at aei dot mpg dot de
@ 2006-01-24 22:53 ` pinskia at gcc dot gnu dot org
  2006-01-25  0:04 ` pinskia at gcc dot gnu dot org
                   ` (14 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-01-24 22:53 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #11 from pinskia at gcc dot gnu dot org  2006-01-24 22:53 -------
It was broken before "20051231".  So we are done to a month.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25908


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [Bug c++/25908] [4.2 Regression] vtables with vague linkage is not being marked as vague on darwin
  2006-01-22  0:51 [Bug c++/25908] New: Multiple definitions of symbol vtables schnetter at aei dot mpg dot de
                   ` (11 preceding siblings ...)
  2006-01-24 22:53 ` pinskia at gcc dot gnu dot org
@ 2006-01-25  0:04 ` pinskia at gcc dot gnu dot org
  2006-01-25  1:06 ` pinskia at gcc dot gnu dot org
                   ` (13 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-01-25  0:04 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #12 from pinskia at gcc dot gnu dot org  2006-01-25 00:04 -------
It worked in "20051203".


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25908


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [Bug c++/25908] [4.2 Regression] vtables with vague linkage is not being marked as vague on darwin
  2006-01-22  0:51 [Bug c++/25908] New: Multiple definitions of symbol vtables schnetter at aei dot mpg dot de
                   ` (12 preceding siblings ...)
  2006-01-25  0:04 ` pinskia at gcc dot gnu dot org
@ 2006-01-25  1:06 ` pinskia at gcc dot gnu dot org
  2006-01-25  1:10 ` pinskia at gcc dot gnu dot org
                   ` (12 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-01-25  1:06 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #13 from pinskia at gcc dot gnu dot org  2006-01-25 01:06 -------
It was broken in "20051217". so only two weeks now.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25908


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [Bug c++/25908] [4.2 Regression] vtables with vague linkage is not being marked as vague on darwin
  2006-01-22  0:51 [Bug c++/25908] New: Multiple definitions of symbol vtables schnetter at aei dot mpg dot de
                   ` (13 preceding siblings ...)
  2006-01-25  1:06 ` pinskia at gcc dot gnu dot org
@ 2006-01-25  1:10 ` pinskia at gcc dot gnu dot org
  2006-01-25  2:14 ` pinskia at gcc dot gnu dot org
                   ` (11 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-01-25  1:10 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #14 from pinskia at gcc dot gnu dot org  2006-01-25 01:10 -------
Nathan sorry for CCing you (that was accident).


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|nathan at gcc dot gnu dot   |
                   |org                         |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25908


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [Bug c++/25908] [4.2 Regression] vtables with vague linkage is not being marked as vague on darwin
  2006-01-22  0:51 [Bug c++/25908] New: Multiple definitions of symbol vtables schnetter at aei dot mpg dot de
                   ` (14 preceding siblings ...)
  2006-01-25  1:10 ` pinskia at gcc dot gnu dot org
@ 2006-01-25  2:14 ` pinskia at gcc dot gnu dot org
  2006-01-25  3:40 ` pinskia at gcc dot gnu dot org
                   ` (10 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-01-25  2:14 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #15 from pinskia at gcc dot gnu dot org  2006-01-25 02:14 -------
Fails in "20051210".


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25908


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [Bug c++/25908] [4.2 Regression] vtables with vague linkage is not being marked as vague on darwin
  2006-01-22  0:51 [Bug c++/25908] New: Multiple definitions of symbol vtables schnetter at aei dot mpg dot de
                   ` (15 preceding siblings ...)
  2006-01-25  2:14 ` pinskia at gcc dot gnu dot org
@ 2006-01-25  3:40 ` pinskia at gcc dot gnu dot org
  2006-01-25  3:51 ` pinskia at gcc dot gnu dot org
                   ` (9 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-01-25  3:40 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #16 from pinskia at gcc dot gnu dot org  2006-01-25 03:40 -------
Before the breakage:
        .globl __ZTV1f
        .weak_definition __ZTV1f
        .section __DATA,__const_coal,coalesced

After:
        .globl __ZTV1f
        .const_data

We are doing two things wrong, not marking this as weak and then not putting it
into the coalesced section.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25908


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [Bug c++/25908] [4.2 Regression] vtables with vague linkage is not being marked as vague on darwin
  2006-01-22  0:51 [Bug c++/25908] New: Multiple definitions of symbol vtables schnetter at aei dot mpg dot de
                   ` (16 preceding siblings ...)
  2006-01-25  3:40 ` pinskia at gcc dot gnu dot org
@ 2006-01-25  3:51 ` pinskia at gcc dot gnu dot org
  2006-01-25  3:58 ` pinskia at gcc dot gnu dot org
                   ` (8 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-01-25  3:51 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #17 from pinskia at gcc dot gnu dot org  2006-01-25 03:51 -------
Caused by:
        (machopic_select_section): Return the selected section rather than
        emitting assembly code.  Replace the static function table with
        inline conditional expressions.  Update the tests of last_text_section
        and move them into the FUNCTION_DECL block.


I have to figure out why.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25908


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [Bug c++/25908] [4.2 Regression] vtables with vague linkage is not being marked as vague on darwin
  2006-01-22  0:51 [Bug c++/25908] New: Multiple definitions of symbol vtables schnetter at aei dot mpg dot de
                   ` (17 preceding siblings ...)
  2006-01-25  3:51 ` pinskia at gcc dot gnu dot org
@ 2006-01-25  3:58 ` pinskia at gcc dot gnu dot org
  2006-01-25  4:07 ` pinskia at gcc dot gnu dot org
                   ` (7 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-01-25  3:58 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #18 from pinskia at gcc dot gnu dot org  2006-01-25 03:58 -------
Or maybe not.  More likely the TARGET_CXX_CLASS_DATA_ALWAYS_COMDAT changes.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25908


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [Bug c++/25908] [4.2 Regression] vtables with vague linkage is not being marked as vague on darwin
  2006-01-22  0:51 [Bug c++/25908] New: Multiple definitions of symbol vtables schnetter at aei dot mpg dot de
                   ` (18 preceding siblings ...)
  2006-01-25  3:58 ` pinskia at gcc dot gnu dot org
@ 2006-01-25  4:07 ` pinskia at gcc dot gnu dot org
  2006-01-25  4:39 ` pinskia at gcc dot gnu dot org
                   ` (6 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-01-25  4:07 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #19 from pinskia at gcc dot gnu dot org  2006-01-25 04:07 -------
I might need some C++ help on this one but I think this is valid as the virtual
function is marked as inline so it is vague but can that be a key function?


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25908


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [Bug c++/25908] [4.2 Regression] vtables with vague linkage is not being marked as vague on darwin
  2006-01-22  0:51 [Bug c++/25908] New: Multiple definitions of symbol vtables schnetter at aei dot mpg dot de
                   ` (19 preceding siblings ...)
  2006-01-25  4:07 ` pinskia at gcc dot gnu dot org
@ 2006-01-25  4:39 ` pinskia at gcc dot gnu dot org
  2006-01-25  4:44 ` pinskia at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-01-25  4:39 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #20 from pinskia at gcc dot gnu dot org  2006-01-25 04:39 -------
Found the problem and a way to fix it.  The problem is that the key function
needs to be changed to the  arm-eabi way and not the IA64 C++ ABI way.

See http://gcc.gnu.org/ml/gcc-patches/2004-08/msg02645.html for the ARM-eabi
way.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |pinskia at gcc dot gnu dot
                   |dot org                     |org
             Status|NEW                         |ASSIGNED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25908


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [Bug c++/25908] [4.2 Regression] vtables with vague linkage is not being marked as vague on darwin
  2006-01-22  0:51 [Bug c++/25908] New: Multiple definitions of symbol vtables schnetter at aei dot mpg dot de
                   ` (20 preceding siblings ...)
  2006-01-25  4:39 ` pinskia at gcc dot gnu dot org
@ 2006-01-25  4:44 ` pinskia at gcc dot gnu dot org
  2006-01-26 15:33 ` [Bug target/25908] " pinskia at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-01-25  4:44 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #21 from pinskia at gcc dot gnu dot org  2006-01-25 04:44 -------
To remind me, I should enable g++.dg/abi/key1.C on *-darwin.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25908


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [Bug target/25908] [4.2 Regression] vtables with vague linkage is not being marked as vague on darwin
  2006-01-22  0:51 [Bug c++/25908] New: Multiple definitions of symbol vtables schnetter at aei dot mpg dot de
                   ` (21 preceding siblings ...)
  2006-01-25  4:44 ` pinskia at gcc dot gnu dot org
@ 2006-01-26 15:33 ` pinskia at gcc dot gnu dot org
  2006-02-20 23:48 ` pinskia at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-01-26 15:33 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #22 from pinskia at gcc dot gnu dot org  2006-01-26 15:32 -------
Patch posted:
http://gcc.gnu.org/ml/gcc-patches/2006-01/msg01843.html


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                URL|                            |http://gcc.gnu.org/ml/gcc-
                   |                            |patches/2006-
                   |                            |01/msg01843.html
           Keywords|                            |patch


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25908


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [Bug target/25908] [4.2 Regression] vtables with vague linkage is not being marked as vague on darwin
  2006-01-22  0:51 [Bug c++/25908] New: Multiple definitions of symbol vtables schnetter at aei dot mpg dot de
                   ` (22 preceding siblings ...)
  2006-01-26 15:33 ` [Bug target/25908] " pinskia at gcc dot gnu dot org
@ 2006-02-20 23:48 ` pinskia at gcc dot gnu dot org
  2006-02-22 22:11 ` mrs at apple dot com
                   ` (2 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-02-20 23:48 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #23 from pinskia at gcc dot gnu dot org  2006-02-20 23:48 -------
I am no longer going to work on this, it is too much hassle for me to get this
fixed.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |geoffk at gcc dot gnu dot
                   |                            |org
         AssignedTo|pinskia at gcc dot gnu dot  |unassigned at gcc dot gnu
                   |org                         |dot org
                URL|http://gcc.gnu.org/ml/gcc-  |
                   |patches/2006-               |
                   |01/msg01843.html            |
             Status|ASSIGNED                    |NEW
           Keywords|patch                       |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25908


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [Bug target/25908] [4.2 Regression] vtables with vague linkage is not being marked as vague on darwin
  2006-01-22  0:51 [Bug c++/25908] New: Multiple definitions of symbol vtables schnetter at aei dot mpg dot de
                   ` (23 preceding siblings ...)
  2006-02-20 23:48 ` pinskia at gcc dot gnu dot org
@ 2006-02-22 22:11 ` mrs at apple dot com
  2006-03-02  2:21 ` mrs at gcc dot gnu dot org
  2006-03-02  2:27 ` pinskia at gcc dot gnu dot org
  26 siblings, 0 replies; 28+ messages in thread
From: mrs at apple dot com @ 2006-02-22 22:11 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #24 from mrs at apple dot com  2006-02-22 22:11 -------
Submitted patch to fix this
http://gcc.gnu.org/ml/gcc-patches/2006-02/msg01705.html


-- 

mrs at apple dot com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |mrs at apple dot com


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25908


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [Bug target/25908] [4.2 Regression] vtables with vague linkage is not being marked as vague on darwin
  2006-01-22  0:51 [Bug c++/25908] New: Multiple definitions of symbol vtables schnetter at aei dot mpg dot de
                   ` (24 preceding siblings ...)
  2006-02-22 22:11 ` mrs at apple dot com
@ 2006-03-02  2:21 ` mrs at gcc dot gnu dot org
  2006-03-02  2:27 ` pinskia at gcc dot gnu dot org
  26 siblings, 0 replies; 28+ messages in thread
From: mrs at gcc dot gnu dot org @ 2006-03-02  2:21 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #25 from mrs at gcc dot gnu dot org  2006-03-02 02:20 -------
Subject: Bug 25908

Author: mrs
Date: Thu Mar  2 02:20:54 2006
New Revision: 111632

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=111632
Log:
        PR darwin/25908
        * decl2.c (import_export_decl): Fix ABI breakage on darwin.

        * g++.dg/abi/key2.C: Add.

Added:
    trunk/gcc/testsuite/g++.dg/abi/key2.C
Modified:
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/decl2.c
    trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25908


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [Bug target/25908] [4.2 Regression] vtables with vague linkage is not being marked as vague on darwin
  2006-01-22  0:51 [Bug c++/25908] New: Multiple definitions of symbol vtables schnetter at aei dot mpg dot de
                   ` (25 preceding siblings ...)
  2006-03-02  2:21 ` mrs at gcc dot gnu dot org
@ 2006-03-02  2:27 ` pinskia at gcc dot gnu dot org
  26 siblings, 0 replies; 28+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-03-02  2:27 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #26 from pinskia at gcc dot gnu dot org  2006-03-02 02:27 -------
Fixed, thanks Mike for fixing this one.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25908


^ permalink raw reply	[flat|nested] 28+ messages in thread

end of thread, other threads:[~2006-03-02  2:27 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-01-22  0:51 [Bug c++/25908] New: Multiple definitions of symbol vtables schnetter at aei dot mpg dot de
2006-01-23 16:19 ` [Bug c++/25908] " pinskia at gcc dot gnu dot org
2006-01-23 19:45 ` schnetter at aei dot mpg dot de
2006-01-23 19:47 ` schnetter at aei dot mpg dot de
2006-01-23 19:47 ` schnetter at aei dot mpg dot de
2006-01-23 19:51 ` [Bug c++/25908] [4.2 Regression] " pinskia at gcc dot gnu dot org
2006-01-23 19:52 ` pinskia at gcc dot gnu dot org
2006-01-24 20:04 ` pinskia at gcc dot gnu dot org
2006-01-24 20:14 ` pinskia at gcc dot gnu dot org
2006-01-24 20:20 ` pinskia at gcc dot gnu dot org
2006-01-24 20:28 ` pinskia at gcc dot gnu dot org
2006-01-24 21:09 ` [Bug c++/25908] [4.2 Regression] vtables with vague linkage is not being marked as vague on darwin schnetter at aei dot mpg dot de
2006-01-24 22:53 ` pinskia at gcc dot gnu dot org
2006-01-25  0:04 ` pinskia at gcc dot gnu dot org
2006-01-25  1:06 ` pinskia at gcc dot gnu dot org
2006-01-25  1:10 ` pinskia at gcc dot gnu dot org
2006-01-25  2:14 ` pinskia at gcc dot gnu dot org
2006-01-25  3:40 ` pinskia at gcc dot gnu dot org
2006-01-25  3:51 ` pinskia at gcc dot gnu dot org
2006-01-25  3:58 ` pinskia at gcc dot gnu dot org
2006-01-25  4:07 ` pinskia at gcc dot gnu dot org
2006-01-25  4:39 ` pinskia at gcc dot gnu dot org
2006-01-25  4:44 ` pinskia at gcc dot gnu dot org
2006-01-26 15:33 ` [Bug target/25908] " pinskia at gcc dot gnu dot org
2006-02-20 23:48 ` pinskia at gcc dot gnu dot org
2006-02-22 22:11 ` mrs at apple dot com
2006-03-02  2:21 ` mrs at gcc dot gnu dot org
2006-03-02  2:27 ` pinskia at gcc dot gnu dot org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).