public inbox for libabigail@sourceware.org
 help / color / mirror / Atom feed
From: "woodard at redhat dot com" <sourceware-bugzilla@sourceware.org>
To: libabigail@sourceware.org
Subject: [Bug default/27326] New: libpoppler-glib.so.8.18.0 fails selfcheck
Date: Wed, 03 Feb 2021 03:28:03 +0000	[thread overview]
Message-ID: <bug-27326-9487@http.sourceware.org/bugzilla/> (raw)

https://sourceware.org/bugzilla/show_bug.cgi?id=27326

            Bug ID: 27326
           Summary: libpoppler-glib.so.8.18.0 fails selfcheck
           Product: libabigail
           Version: unspecified
            Status: NEW
          Severity: normal
          Priority: P2
         Component: default
          Assignee: dodji at redhat dot com
          Reporter: woodard at redhat dot com
                CC: libabigail at sourceware dot org
  Target Milestone: ---

with libabigail trunk 271e3afaf6f2b6f38b4f125f64f5b24a8f78459f

/lib64/libpoppler-glib.so.8.18.0 from poppler-glib-0.90.0-6.fc33.x86_64 fails
self check:

/home/ben/Shared/Work/test/libabigail-x86_64/bin/abidw --abidiff
/lib64/libpoppler-glib.so.8.18.0
Download failed: File exists.  Continuing without debug info for
/home/ben/Shared/test/system-supplied DSO at 0x7ffff7fcf000.
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
Functions changes summary: 0 Removed, 215 Changed, 0 Added functions
Variables changes summary: 0 Removed, 0 Changed, 0 Added variable

215 functions with some indirect sub-type change:

  [C] 'function PopplerAnnot* poppler_annot_circle_new(PopplerDocument*,
PopplerRectangle*)' at poppler-annot.cc:667:1 has some indirect sub-type
changes:
    parameter 1 of type 'PopplerDocument*' has sub-type changes:
      in pointed to type 'typedef PopplerDocument' at poppler.h:174:1:
        underlying type 'struct _PopplerDocument' at poppler-private.h:25:1
changed:
          type size hasn't changed
          2 data member changes:
            type of 'PDFDoc* _PopplerDocument::doc' changed:
              in pointed to type 'class PDFDoc' at PDFDoc.h:116:1:
                type size hasn't changed
                2 data member changes:
                  type of 'Catalog* PDFDoc::catalog' changed:
                    in pointed to type 'class Catalog' at Catalog.h:104:1:
                      type size hasn't changed
                      2 data member changes:
                        type of 'PDFDoc* Catalog::doc' changed:
                          pointed to type 'class PDFDoc' changed, as being
reported
                        type of 'StructTreeRoot* Catalog::structTreeRoot'
changed:
                          in pointed to type 'class StructTreeRoot' at
StructTreeRoot.h:26:1:
                            type size hasn't changed
                            2 data member changes:
                              type of 'PDFDoc* StructTreeRoot::doc' changed:
                                pointed to type 'class PDFDoc' changed, as
being reported
                              type of 'StructTreeRoot::ElemPtrArray
StructTreeRoot::elements' changed:
                                underlying type 'class
std::vector<StructElement*, std::allocator<StructElement*> >' at
stl_vector.h:389:1 changed:
                                  type size hasn't changed
                                  1 base class change:
                                    'struct std::_Vector_base<StructElement*,
std::allocator<StructElement*> >' at stl_vector.h:84:1 changed:
                                      type size hasn't changed
                                      1 data member change:
                                        type of
'std::_Vector_base<StructElement*, std::allocator<StructElement*>
>::_Vector_impl std::_Vector_base<StructElement*,
std::allocator<StructElement*> >::_M_impl' changed:
                                          type size hasn't changed
                                          1 base class change:
                                            'struct
std::_Vector_base<StructElement*, std::allocator<StructElement*>
>::_Vector_impl_data' at stl_vector.h:91:1 changed:
                                              type size hasn't changed
                                              3 data member changes:
                                                type of
'std::_Vector_base<StructElement*, std::allocator<StructElement*> >::pointer
std::_Vector_base<StructElement*, std::allocator<StructElement*>
>::_Vector_impl_data::_M_start' changed:
                                                  underlying type 'typedef
__gnu_cxx::__alloc_traits<std::allocator<StructElement*>,
StructElement*>::pointer' at alloc_traits.h:57:1 changed:
                                                    underlying type 'typedef
std::allocator_traits<std::allocator<StructElement*> >::pointer' at
alloc_traits.h:416:1 changed:
                                                      underlying type
'StructElement**' changed:
                                                        in pointed to type
'StructElement*':
                                                          in pointed to type
'class StructElement' at StructElement.h:122:1:
                                                            type size hasn't
changed
                                                            3 data member
changes:
                                                              type of
'StructTreeRoot* StructElement::treeRoot' changed:
                                                                pointed to type
'class StructTreeRoot' changed, as being reported
                                                              type of
'StructElement* StructElement::parent' changed:
                                                                pointed to type
'class StructElement' changed, as being reported
                                                              type of
'anonymous data member union {StructElement::StructData* s;
StructElement::ContentData* c;}' changed:
                                                                type size
hasn't changed
                                                                1 data member
change:
                                                                  type of
'StructElement::StructData* s' changed:
                                                                    in pointed
to type 'struct StructElement::StructData' at StructElement.h:255:1:
                                                                      type size
hasn't changed
                                                                      1 data
member change:
                                                                        type of
'StructElement::ElemPtrArray StructElement::StructData::elements' changed:
                                                                         
underlying type 'class std::vector<StructElement*,
std::allocator<StructElement*> >' changed, as being reported
                                                                type changed
from:
                                                                  union
{StructElement::StructData* s; StructElement::ContentData* c;}
                                                                to:
                                                                  union
{StructElement::StructData* s; StructElement::ContentData* c;}
                                                type of
'std::_Vector_base<StructElement*, std::allocator<StructElement*> >::pointer
std::_Vector_base<StructElement*, std::allocator<StructElement*>
>::_Vector_impl_data::_M_finish' changed, as reported earlier
                                                type of
'std::_Vector_base<StructElement*, std::allocator<StructElement*> >::pointer
std::_Vector_base<StructElement*, std::allocator<StructElement*>
>::_Vector_impl_data::_M_end_of_storage' changed, as reported earlier
                  type of 'Page** PDFDoc::pageCache' changed:
                    in pointed to type 'Page*':
                      in pointed to type 'class Page' at Page.h:144:1:
                        type size hasn't changed
                        2 data member changes:
                          type of 'PDFDoc* Page::doc' changed:
                            pointed to type 'class PDFDoc' changed, as being
reported
                          type of 'Annots* Page::annots' changed:
                            in pointed to type 'class Annots' at
Annot.h:1684:1:
                              type size hasn't changed
                              1 data member change:
                                type of 'PDFDoc* Annots::doc' changed:
                                  pointed to type 'class PDFDoc' changed, as
being reported
            type of 'CairoOutputDev* _PopplerDocument::output_dev' changed:
              in pointed to type 'class CairoOutputDev' at
CairoOutputDev.h:88:1:
                type size hasn't changed
                66 member function insertions:
                  'method virtual bool
CairoOutputDev::axialShadedFill(GfxState*, GfxAxialShading*, double, double)'
at CairoOutputDev.cc:1117:1, virtual at voffset 63/106
                  'method virtual bool
CairoOutputDev::axialShadedSupportExtend(GfxState*, GfxAxialShading*)' at
CairoOutputDev.cc:1140:1, virtual at voffset 64/106
                  'method virtual void
CairoOutputDev::beginActualText(GfxState*, const GooString*)' at
CairoOutputDev.cc:1605:1, virtual at voffset 83/106
                  'method virtual void CairoOutputDev::beginString(GfxState*,
const GooString*)' at CairoOutputDev.cc:1398:1, virtual at voffset 74/106
                  'method virtual void
CairoOutputDev::beginTextObject(GfxState*)' at CairoOutputDev.cc:1588:1,
virtual at voffset 80/106
                  'method virtual void
CairoOutputDev::beginTransparencyGroup(GfxState*, const double*,
GfxColorSpace*, bool, bool, bool)' at CairoOutputDev.cc:1645:1, virtual at
voffset 102/106
                  'method virtual bool
CairoOutputDev::beginType3Char(GfxState*, double, double, double, double,
CharCode, const Unicode*, int)' at CairoOutputDev.cc:1536:1, virtual at voffset
78/106
                  'method virtual void
CairoOutputDev::clearSoftMask(GfxState*)' at CairoOutputDev.cc:1910:1, virtual
at voffset 106/106
                  'method virtual void CairoOutputDev::clip(GfxState*)' at
CairoOutputDev.cc:1339:1, virtual at voffset 69/106
                  'method virtual void
CairoOutputDev::clipToStrokePath(GfxState*)' at CairoOutputDev.cc:1364:1,
virtual at voffset 71/106
                  'method virtual void CairoOutputDev::drawChar(GfxState*,
double, double, double, double, double, double, CharCode, int, const Unicode*,
int)' at CairoOutputDev.cc:1419:1, virtual at voffset 76/106
                  'method virtual void CairoOutputDev::drawImage(GfxState*,
Object*, Stream*, int, int, GfxImageColorMap*, bool, const int*, bool)' at
CairoOutputDev.cc:3275:1, virtual at voffset 88/106
                  'method virtual void CairoOutputDev::drawImageMask(GfxState*,
Object*, Stream*, int, int, bool, bool, bool)' at CairoOutputDev.cc:2009:1,
virtual at voffset 85/106
                  'method virtual void
CairoOutputDev::drawMaskedImage(GfxState*, Object*, Stream*, int, int,
GfxImageColorMap*, bool, Stream*, int, int, bool, bool)' at
CairoOutputDev.cc:2539:1, virtual at voffset 89/106
                  'method virtual void
CairoOutputDev::drawSoftMaskedImage(GfxState*, Object*, Stream*, int, int,
GfxImageColorMap*, bool, Stream*, int, int, GfxImageColorMap*, bool)' at
CairoOutputDev.cc:2696:1, virtual at voffset 90/106
                  'method virtual void
CairoOutputDev::endActualText(GfxState*)' at CairoOutputDev.cc:1611:1, virtual
at voffset 84/106
                  'method virtual void CairoOutputDev::endPage()' at
CairoOutputDev.cc:286:1, virtual at voffset 15/106
                  'method virtual void CairoOutputDev::endString(GfxState*)' at
CairoOutputDev.cc:1455:1, virtual at voffset 75/106
                  'method virtual void
CairoOutputDev::endTextObject(GfxState*)' at CairoOutputDev.cc:1591:1, virtual
at voffset 81/106
                  'method virtual void
CairoOutputDev::endTransparencyGroup(GfxState*)' at CairoOutputDev.cc:1693:1,
virtual at voffset 103/106
                  'method virtual void CairoOutputDev::endType3Char(GfxState*)'
at CairoOutputDev.cc:1565:1, virtual at voffset 79/106
                  'method virtual void CairoOutputDev::eoClip(GfxState*)' at
CairoOutputDev.cc:1351:1, virtual at voffset 70/106
                  'method virtual void CairoOutputDev::eoFill(GfxState*)' at
CairoOutputDev.cc:872:1, virtual at voffset 60/106
                  'method virtual void CairoOutputDev::fill(GfxState*)' at
CairoOutputDev.cc:836:1, virtual at voffset 59/106
                  'method virtual bool
CairoOutputDev::functionShadedFill(GfxState*, GfxFunctionShading*)' at
CairoOutputDev.cc:1018:1, virtual at voffset 62/106
                  'method virtual bool
CairoOutputDev::gouraudTriangleShadedFill(GfxState*,
GfxGouraudTriangleShading*)' at CairoOutputDev.cc:1190:1, virtual at voffset
67/106
                  'method virtual bool CairoOutputDev::interpretType3Chars()'
at CairoOutputDev.h:125:1, virtual at voffset 8/106
                  'method virtual bool CairoOutputDev::needClipToCropBox()' at
CairoOutputDev.h:129:1, virtual at voffset 11/106
                  'method virtual void
CairoOutputDev::paintTransparencyGroup(GfxState*, const double*)' at
CairoOutputDev.cc:1707:1, virtual at voffset 104/106
                  'method virtual bool
CairoOutputDev::patchMeshShadedFill(GfxState*, GfxPatchMeshShading*)' at
CairoOutputDev.cc:1248:1, virtual at voffset 68/106
                  'method virtual bool
CairoOutputDev::radialShadedFill(GfxState*, GfxRadialShading*, double, double)'
at CairoOutputDev.cc:1145:1, virtual at voffset 65/106
                  'method virtual bool
CairoOutputDev::radialShadedSupportExtend(GfxState*, GfxRadialShading*)' at
CairoOutputDev.cc:1184:1, virtual at voffset 66/106
                  'method virtual void CairoOutputDev::restoreState(GfxState*)'
at CairoOutputDev.cc:309:1, virtual at voffset 21/106
                  'method virtual void CairoOutputDev::saveState(GfxState*)' at
CairoOutputDev.cc:293:1, virtual at voffset 20/106
                  'method virtual void CairoOutputDev::setDefaultCTM(const
double*)' at CairoOutputDev.cc:361:1, virtual at voffset 12/106
                  'method virtual void CairoOutputDev::setSoftMask(GfxState*,
const double*, bool, Function*, GfxColor*)' at CairoOutputDev.cc:1773:1,
virtual at voffset 105/106
                  'method virtual void
CairoOutputDev::setSoftMaskFromImageMask(GfxState*, Object*, Stream*, int, int,
bool, bool, double*)' at CairoOutputDev.cc:2063:1, virtual at voffset 86/106
                  'method virtual void CairoOutputDev::startPage(int,
GfxState*, XRef*)' at CairoOutputDev.cc:269:1, virtual at voffset 14/106
                  'method virtual void CairoOutputDev::stroke(GfxState*)' at
CairoOutputDev.cc:808:1, virtual at voffset 58/106
                  'method virtual bool
CairoOutputDev::tilingPatternFill(GfxState*, Gfx*, Catalog*, Object*, const
double*, int, int, Dict*, const double*, const double*, int, int, int, int,
double, double)' at CairoOutputDev.cc:895:1, virtual at voffset 61/106
                  'method virtual void CairoOutputDev::type3D0(GfxState*,
double, double)' at CairoOutputDev.cc:1572:1, virtual at voffset 97/106
                  'method virtual void CairoOutputDev::type3D1(GfxState*,
double, double, double, double, double, double)' at CairoOutputDev.cc:1577:1,
virtual at voffset 98/106
                  'method virtual void
CairoOutputDev::unsetSoftMaskFromImageMask(GfxState*, double*)' at
CairoOutputDev.cc:2127:1, virtual at voffset 87/106
                  'method virtual void CairoOutputDev::updateAll(GfxState*)' at
CairoOutputDev.cc:344:1, virtual at voffset 22/106
                  'method virtual void
CairoOutputDev::updateBlendMode(GfxState*)' at CairoOutputDev.cc:604:1, virtual
at voffset 37/106
                  'method virtual void CairoOutputDev::updateCTM(GfxState*,
double, double, double, double, double, double)' at CairoOutputDev.cc:377:1,
virtual at voffset 23/106
                  'method virtual void
CairoOutputDev::updateFillColor(GfxState*)' at CairoOutputDev.cc:501:1, virtual
at voffset 35/106
                  'method virtual void
CairoOutputDev::updateFillColorStop(GfxState*, double)' at
CairoOutputDev.cc:583:1, virtual at voffset 46/106
                  'method virtual void
CairoOutputDev::updateFillOpacity(GfxState*)' at CairoOutputDev.cc:547:1,
virtual at voffset 38/106
                  'method virtual void
CairoOutputDev::updateFlatness(GfxState*)' at CairoOutputDev.cc:423:1, virtual
at voffset 25/106
                  'method virtual void CairoOutputDev::updateFont(GfxState*)'
at CairoOutputDev.cc:659:1, virtual at voffset 47/106
                  'method virtual void
CairoOutputDev::updateLineCap(GfxState*)' at CairoOutputDev.cc:443:1, virtual
at voffset 27/106
                  'method virtual void
CairoOutputDev::updateLineDash(GfxState*)' at CairoOutputDev.cc:412:1, virtual
at voffset 24/106
                  'method virtual void
CairoOutputDev::updateLineJoin(GfxState*)' at CairoOutputDev.cc:427:1, virtual
at voffset 26/106
                  'method virtual void
CairoOutputDev::updateLineWidth(GfxState*)' at CairoOutputDev.cc:465:1, virtual
at voffset 29/106
                  'method virtual void
CairoOutputDev::updateMiterLimit(GfxState*)' at CairoOutputDev.cc:459:1,
virtual at voffset 28/106
                  'method virtual void
CairoOutputDev::updateStrokeColor(GfxState*)' at CairoOutputDev.cc:524:1,
virtual at voffset 36/106
                  'method virtual void
CairoOutputDev::updateStrokeOpacity(GfxState*)' at CairoOutputDev.cc:565:1,
virtual at voffset 39/106
                  'method virtual bool CairoOutputDev::upsideDown()' at
CairoOutputDev.h:101:1, virtual at voffset 2/106
                  'method virtual bool CairoOutputDev::useDrawChar()' at
CairoOutputDev.h:104:1, virtual at voffset 3/106
                  'method virtual bool CairoOutputDev::useFillColorStop()' at
CairoOutputDev.h:121:1, virtual at voffset 6/106
                  'method virtual bool CairoOutputDev::useShadedFills(int)' at
CairoOutputDev.h:115:1, virtual at voffset 5/106
                  'method virtual bool CairoOutputDev::useTilingPatternFill()'
at CairoOutputDev.h:109:1, virtual at voffset 4/106
                  'method virtual CairoOutputDev::~CairoOutputDev(int)' at
CairoOutputDev.cc:175:1
                  'method virtual CairoOutputDev::~CairoOutputDev(int)' at
CairoOutputDev.cc:175:1
                  'method virtual CairoOutputDev::~CairoOutputDev(int)' at
CairoOutputDev.cc:175:1
                66 member function changes:
                  'method virtual CairoOutputDev::~CairoOutputDev(int)' has
some sub-type changes:
                    implicit parameter 0 of type 'CairoOutputDev*' has sub-type
changes:
                      pointed to type 'class CairoOutputDev' changed, as being
reported
                  'method virtual CairoOutputDev::~CairoOutputDev(int)' has
some sub-type changes:
                    implicit parameter 0 of type 'CairoOutputDev*' has sub-type
changes:
                      pointed to type 'class CairoOutputDev' changed, as being
reported
                  'method virtual CairoOutputDev::~CairoOutputDev(int)' has
some sub-type changes:
                    implicit parameter 0 of type 'CairoOutputDev*' has sub-type
changes:
                      pointed to type 'class CairoOutputDev' changed, as being
reported
                  'method virtual bool CairoOutputDev::upsideDown()' has some
sub-type changes:
                    implicit parameter 0 of type 'CairoOutputDev*' has sub-type
changes:
                      pointed to type 'class CairoOutputDev' changed, as being
reported
                  'method virtual bool CairoOutputDev::useDrawChar()' has some
sub-type changes:
                    implicit parameter 0 of type 'CairoOutputDev*' has sub-type
changes:
                      pointed to type 'class CairoOutputDev' changed, as being
reported
                  'method virtual bool CairoOutputDev::useTilingPatternFill()'
has some sub-type changes:
                    implicit parameter 0 of type 'CairoOutputDev*' has sub-type
changes:
                      pointed to type 'class CairoOutputDev' changed, as being
reported
                  'method virtual bool CairoOutputDev::useShadedFills(int)' has
some sub-type changes:
                    implicit parameter 0 of type 'CairoOutputDev*' has sub-type
changes:
                      pointed to type 'class CairoOutputDev' changed, as being
reported
                  'method virtual bool CairoOutputDev::useFillColorStop()' has
some sub-type changes:
                    implicit parameter 0 of type 'CairoOutputDev*' has sub-type
changes:
...
<the rest is just duplicate reports>

There is a huge amount of output.

It isn't clear what the problem actually is. At the base of the tree you see:
  type changed from:
union {StructElement::StructData* s; StructElement::ContentData* c;}
to:
union {StructElement::StructData* s; StructElement::ContentData* c;}

Which doesn't actually have any obvious differences.
Then the vtable has some weird inconsistencies.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

             reply	other threads:[~2021-02-03  3:28 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-02-03  3:28 woodard at redhat dot com [this message]
2021-02-03  3:28 ` [Bug default/27326] " woodard at redhat dot com
2021-03-04 20:20 ` woodard at redhat dot com

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=bug-27326-9487@http.sourceware.org/bugzilla/ \
    --to=sourceware-bugzilla@sourceware.org \
    --cc=libabigail@sourceware.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).