dwarves_fprintf: Don't ignore virtual data members

When computing the size of a class, leave, caused problems in
some cases, links to the reports are in the comments.

Reported-by: Nicolas <nikos42@gmail.com>
Suggested-by: Mark Wielaard <mjw@redhat.com>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
Arnaldo Carvalho de Melo 2013-03-20 10:38:03 -03:00
parent e512e3f9b3
commit 222f0067a9
1 changed files with 10 additions and 3 deletions

View File

@ -1386,10 +1386,17 @@ size_t class__fprintf(struct class *class, const struct cu *cu,
++printed;
/* XXX for now just skip these */
if (tag_pos->tag == DW_TAG_inheritance &&
pos->virtuality == DW_VIRTUALITY_virtual)
if (tag_pos->tag == DW_TAG_inheritance)
continue;
#if 0
/*
* This one was being skipped but caused problems with:
* http://article.gmane.org/gmane.comp.debugging.dwarves/185
* http://www.spinics.net/lists/dwarves/msg00119.html
*/
if (pos->virtuality == DW_VIRTUALITY_virtual)
continue;
#endif
/*
* Check if we have to adjust size because bitfields were
* combined with previous fields.