- fprintf(stderr, _("%s: %s: undefined reference to '%s'\n"),
- this->program_name_, relinfo->location(relnum, reloffset).c_str(),
- sym->demangled_name().c_str());
+
+ const char* const version = sym->version();
+ if (version == NULL)
+ fprintf(stderr, _("%s: %s: undefined reference to '%s'\n"),
+ location.c_str(), zmsg, sym->demangled_name().c_str());
+ else
+ fprintf(stderr,
+ _("%s: %s: undefined reference to '%s', version '%s'\n"),
+ location.c_str(), zmsg, sym->demangled_name().c_str(), version);
+
+ if (sym->is_cxx_vtable())
+ gold_info(_("%s: the vtable symbol may be undefined because "
+ "the class is missing its key function"),
+ program_name);
+ if (sym->is_placeholder())
+ gold_info(_("%s: the symbol should have been defined by a plugin"),
+ program_name);