[Bug 305460]
Redi
305460 at bugs.launchpad.net
Mon Mar 14 17:15:18 UTC 2022
(In reply to Eyal Rozenberg from comment #16)
> I'm not quite sure what a key function is,
Then read the link I gave you in PR 104918 comment 1.
> Not just learners. If you have a large class with many methods, whose
> implementation is spread across many files, it can take quite a bit of time
> to figure out which method implementation is missing.
The first one. They key function is the first non-inline, non-pure
virtual function. Read the wiki page. I didn't write that page and
suggest you read it just for fun.
The linker could easily say that, with no changes from GCC. That belongs
in the binutils bugzilla though.
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to gcc-defaults in Ubuntu.
https://bugs.launchpad.net/bugs/305460
Title:
[PR42540] c++ error message [vtable undefined] is unhelpful
Status in gcc:
In Progress
Status in gcc-defaults package in Ubuntu:
Confirmed
Bug description:
I've had response to g++ crash reports, so maybe you'd also like to
know about this confusing error message I found.
Thanks!
Alan
This is on an up-to-date install of "Ubuntu 8.04.1".
apt-cache policy gcc
gcc:
Installed: 4:4.2.3-1ubuntu6
Candidate: 4:4.2.3-1ubuntu6
Version table:
*** 4:4.2.3-1ubuntu6 0
500 http://gb.archive.ubuntu.com hardy-updates/main Packages
100 /var/lib/dpkg/status
4:4.2.3-1ubuntu3 0
500 http://gb.archive.ubuntu.com hardy/main Packages
Minimal test program:
class A {
A();
virtual void B();
};
A::A() {}
/* Whoops, I forgot to define A::B() */
Actual error message:
/usr/lib/gcc/x86_64-linux-gnu/4.2.4/../../../../lib/crt1.o: In function `_start':
(.text+0x20): undefined reference to `main'
/tmp/cc8P2uDq.o: In function `A::A()':
test.cpp:(.text+0x9): undefined reference to `vtable for A'
/tmp/cc8P2uDq.o: In function `A::A()':
test.cpp:(.text+0x1f): undefined reference to `vtable for A'
collect2: ld returned 1 exit status
Expected error message:
Something more like "undefined reference to A::B()"
To manage notifications about this bug go to:
https://bugs.launchpad.net/gcc/+bug/305460/+subscriptions
More information about the foundations-bugs
mailing list