This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: c++/3536
- To: gcc-gnats at gcc dot gnu dot org, gcc-prs at gcc dot gnu dot org, "Gard, Torbjörn" <torbjorn dot gard at streamserve dot com>, gcc-bugs at gcc dot gnu dot org, nobody at gcc dot gnu dot org, mark at codesourcery dot com, juergen at monocerus dot demon dot co dot uk, michael at ritzert dot de
- Subject: Re: c++/3536
- From: "Nilsson, Thomas" <thomas dot nilsson at streamserve dot com>
- Date: Tue, 4 Sep 2001 19:13:33 +0200
http://gcc.gnu.org/cgi-bin/gnatsweb
Hello,
The thunks were actually generated and found in the object files but they
were not public so linking failed. Adding the three lower lines to the
function make_thunk() in /gcc/cp/method.c seems solve problem 3536.
Line 361:
/* And neither is it a clone. */
DECL_CLONED_FUNCTION (thunk) = NULL_TREE;
DECL_EXTERNAL (thunk) = 1;
+ /* Make the thunk public unless it is for a destructor */
+ if (!DECL_DESTRUCTOR_P (func_decl))
+ TREE_PUBLIC (thunk) = 1;
Regards,
Thomas