public inbox for gcc-prs@sourceware.org
help / color / mirror / Atom feed
From: dens@stl.sarov.ru
To: gcc-gnats@gcc.gnu.org
Subject: c++/10782: undefined reference to `virtual thunk ...
Date: Wed, 14 May 2003 14:46:00 -0000	[thread overview]
Message-ID: <20030514143948.17526.qmail@sources.redhat.com> (raw)


>Number:         10782
>Category:       c++
>Synopsis:       undefined reference to `virtual thunk ...
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Wed May 14 14:46:00 UTC 2003
>Closed-Date:
>Last-Modified:
>Originator:     dens@stl.sarov.ru
>Release:        unknown-1.0
>Organization:
>Environment:
cat /proc/version 
Linux version 2.4.18-14smp (bhcompile@stripples.devel.redhat.com) (gcc version 3.2 20020903 (Red Hat Linux 8.0 3.2-7)) #1 SMP Wed Sep 4 12:34:47 EDT 2002

cat /etc/issue
Red Hat Linux release 8.0 (Psyche)
Kernel \r on an \m

rpm -qa | grep gcc
gcc-gnat-3.2-7
gcc-objc-3.2-7
gcc-3.2-7
libgcc-3.2-7
gcc-g77-3.2-7
gcc-java-3.2-7
gcc-c++-3.2-7
>Description:
G++ doesn't generate virtual thunk for c21 destructor from attached sample:

nm gtest.o | grep c21D
000006e4 T _ZN3c183c193c21D0Ev
0000066a T _ZN3c183c193c21D1Ev
000005ec T _ZN3c183c193c21D2Ev
         U _ZTv0_n16_N3c183c193c21D0Ev
         U _ZTv0_n16_N3c183c193c21D1Ev
[dens@sr007lnx work]$ g++ gtest.cpp 
gtest.cpp:69: warning: direct base `c0::c1' inaccessible in `c8' due to 
   ambiguity
/home/dens/tmp/ccbwnzlp.o(.gnu.linkonce.d._ZTC3c264_N3c183c193c21E+0x30): undefined reference to `virtual thunk [v:0,-16] to c18::c19::c21::~c21 [in-charge]()'
/home/dens/tmp/ccbwnzlp.o(.gnu.linkonce.d._ZTC3c264_N3c183c193c21E+0x34): undefined reference to `virtual thunk [v:0,-16] to c18::c19::c21::~c21 [in-charge deleting]()'
collect2: ld returned 1 exit status
 
NB in case when c26 constructor is "inline" thunk is not needed. It isn't good also.
>How-To-Repeat:
g++ gtest.cpp
>Fix:

>Release-Note:
>Audit-Trail:
>Unformatted:
----gnatsweb-attachment----
Content-Type: application/octet-stream; name="gtest.cpp"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="gtest.cpp"

Y2xhc3MgYzAgCnsKICBwdWJsaWM6CiAgYzAoKTsKCiAgY2xhc3MgYzEgCiAgewogICAgcHVibGlj
OgogICAgYzEoKTsKCiAgICBzaWduZWQgY2hhciBtMDsKICAgIHN0YXRpYyBsb25nIGRvdWJsZSB2
b2xhdGlsZSB2MDsKCiAgfSAvKiBjbGFzcyBjMSAqLzsKCn0gLyogY2xhc3MgYzAgKi87CgpjMDo6
YzAoKSB7fQpjMDo6YzE6OmMxKCkge30KCm5hbWVzcGFjZSBzdGQgewoKICBjbGFzcyBjMyA6IAog
ICAgcHJpdmF0ZSB2aXJ0dWFsIDo6YzA6OmMxCiAgewogICAgcHVibGljOgogICAgYzMoKTsKCiAg
ICBjbGFzcyBjNiAKICAgIHsKICAgICAgcHVibGljOgogICAgICBjNigpOwoKICAgICAgY2xhc3Mg
YzcgOiBwdWJsaWMgdmlydHVhbCA6OmMwOjpjMQogICAgICB7CiAgICAgICAgcHVibGljOgogICAg
ICAgIGM3KCk7CgogICAgICAgIHZpcnR1YWwgfmM3KCk7CgogICAgICAgIHN0YXRpYyBkb3VibGUg
Y29uc3Qgdm9sYXRpbGUgdjE7CgogICAgICB9IC8qIGNsYXNzIGM3ICovOwoKICAgIH0gLyogY2xh
c3MgYzYgKi87CgogICAgdmlydHVhbCB+YzMoKTsKCiAgfSAvKiBjbGFzcyBjMyAqLzsKCiAgYzM6
OmMzKCkge30KCiAgYzM6On5jMygpIHt9CgogIGMzOjpjNjo6YzYoKSB7fQoKICBjMzo6YzY6OmM3
OjpjNygpIHt9CgogIGMzOjpjNjo6Yzc6On5jNygpIHt9CgogIGRvdWJsZSBjb25zdCB2b2xhdGls
ZSBjMzo6YzY6OmM3Ojp2MSA9IDAuMDsKCn0gLyogbmFtZXNwYWNlIHN0ZCAqLwoKY2xhc3MgYzgg
OiAKICBwcm90ZWN0ZWQgdmlydHVhbCA6OmMwLAogIHB1YmxpYyB2aXJ0dWFsIDo6c3RkOjpjMzo6
YzY6OmM3LAogIHByb3RlY3RlZCA6OmMwOjpjMQp7CiAgcHVibGljOgogIGM4KCk7CgogIHN0cnVj
dCBjOSA6IAogICAgcHJvdGVjdGVkIDo6c3RkOjpjMzo6YzY6OmM3CiAgewogICAgYzkoKTsKCgog
ICAgdmlydHVhbCB+YzkoKTsKCiAgfSAvKiBzdHJ1Y3QgYzkgKi87CgoKfSAvKiBjbGFzcyBjOCAq
LzsKCmM4OjpjOCgpIHt9CgoKYzg6OmM5OjpjOSgpIHt9CgpjODo6Yzk6On5jOSgpIHt9CgoKCnN0
cnVjdCBjMTggOiAKICBwdWJsaWMgdmlydHVhbCA6OnN0ZDo6YzMKewogIGMxOCgpOwoKCiAgY2xh
c3MgYzE5IAogIHsKICAgIHB1YmxpYzoKICAgIGMxOSgpOwoKICAgIHN0cnVjdCBjMjEgOiAKICAg
ICAgcHVibGljIHZpcnR1YWwgOjpzdGQ6OmMzOjpjNjo6YzcsCiAgICAgIHB1YmxpYyA6OmM4CiAg
ICB7CiAgICAgIGMyMSgpOwoKCiAgICAgIHZpcnR1YWwgfmMyMSgpOwoKICAgIH0gLyogc3RydWN0
IGMyMSAqLzsKCiAgICB+YzE5KCk7CgogIH0gLyogY2xhc3MgYzE5ICovOwoKICB2aXJ0dWFsIH5j
MTgoKTsKCn0gLyogc3RydWN0IGMxOCAqLzsKCmMxODo6YzE4KCkge30KCmMxODo6fmMxOCgpIHt9
CgpjMTg6OmMxOTo6YzE5KCkge30KCmMxODo6YzE5Ojp+YzE5KCkge30KCmMxODo6YzE5OjpjMjE6
OmMyMSgpIHt9CgpjMTg6OmMxOTo6YzIxOjp+YzIxKCkge30KCnN0cnVjdCBjMjYgOiBwdWJsaWMg
dmlydHVhbCA6OmMxODo6YzE5OjpjMjEKewogICAgICBjMjYoKTsKfTsgCmMyNjo6YzI2KCkge30K
CgoKLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqCiAgTWFpbiBQcm9ncmFtCioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwoKaW50Cm1h
aW4gKGludCBhcmdjLCBjaGFyICoqYXJndikgewpyZXR1cm4gMDsKfQo=


             reply	other threads:[~2003-05-14 14:46 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-05-14 14:46 dens [this message]
2003-05-14 15:11 bangerth

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20030514143948.17526.qmail@sources.redhat.com \
    --to=dens@stl.sarov.ru \
    --cc=gcc-gnats@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).