[Debian-med-packaging] Bug#748395: Misaligned array access caused by conflicting declarations

Andreas Tille andreas at an3as.eu
Fri May 16 21:36:24 UTC 2014


Hi EMBOSS developers,

due to a rebuild of the Debian archive with clang compiler that is
featuring more strict type checking than gcc an error in the emboss
package was detected.  Since I'm not fully sure how to properly fix this
situation I wonder whether you might be able to provide a patch.

Kind regards

        Andreas.

On Fri, May 16, 2014 at 10:01:32PM +0100, Michael Tautschnig wrote:
> Package: emboss
> Version: 6.6.0-1
> Usertags: goto-cc
> 
> During a rebuild of all packages in a clean sid chroot (and cowbuilder+pbuilder)
> the build failed with the following error. Please note that we use our research
> compiler tool-chain (using tools from the cbmc package), which permits extended
> reporting on type inconsistencies at link time.
> 
> [...]
> libtool: link: gcc -shared  -fPIC -DPIC  .libs/pdfutils.o .libs/plargs.o .libs/plbox.o .libs/plcont.o .libs/plcore.o .libs/plctrl.o .libs/plcvt.o .libs/pldtik.o .libs/plfill.o .libs/plhist.o .libs/plline.o .libs/plmap.o .libs/plot3d.o .libs/plpage.o .libs/plsdef.o .libs/plshade.o .libs/plsym.o .libs/pltick.o .libs/plvpor.o .libs/plwind.o .libs/plstripc.o .libs/hpgl.o .libs/impress.o .libs/ljiip.o .libs/ljii.o .libs/null.o .libs/data.o .libs/pbm.o .libs/plbuf.o .libs/plmeta.o .libs/ps.o .libs/tek.o .libs/xfig.o .libs/xwin.o .libs/gd.o .libs/pdf.o .libs/svg.o .libs/plimage.o .libs/plstdio.o .libs/plvect.o   /usr/lib/x86_64-linux-gnu/libexpat.so -L/usr/lib/x86_64-linux-gnu -lmysqlclient -lpthread -ldl -lpq -lhpdf -lgd -lpng -lz -lm  -O2 -Wl,-z -Wl,relro   -Wl,-soname -Wl,libeplplot.so.3 -o .libs/libeplplot.so.3.2.7
> 
> error: conflicting types for variable "hershey_to_unicode_lookup_table"
> old definition in module plcore file plplotP.h line 385
> struct Hershey_to_Unicode_table []
> new definition in module plsym file plhershey-unicode.h line 50
> const Hershey_to_Unicode_table [980l]
> 
> reason for conflict at padding in types listed below (array/array):
> 
> char [3l]
> char [7l]
> make[4]: *** [libeplplot.la] Error 64
> make[4]: Leaving directory `/srv/jenkins-slave/workspace/sid-goto-cc-emboss/emboss-6.6.0/plplot'
> make[3]: *** [all-recursive] Error 1
> make[3]: Leaving directory `/srv/jenkins-slave/workspace/sid-goto-cc-emboss/emboss-6.6.0/plplot'
> make[2]: *** [all-recursive] Error 1
> make[2]: Leaving directory `/srv/jenkins-slave/workspace/sid-goto-cc-emboss/emboss-6.6.0'
> dh_auto_build: make -j1 AJAX_FIXED_ROOT=\"/usr/share/EMBOSS\" CPPFLAGS=-D_FORTIFY_SOURCE=2 CFLAGS=-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security LDFLAGS=-lexpat -L/usr/lib/x86_64-linux-gnu -lmysqlclient -lpthread -lz -lm -ldl -lpq -Wl,-z,relro returned exit code 2
> make[1]: *** [override_dh_auto_build] Error 2
> make[1]: Leaving directory `/srv/jenkins-slave/workspace/sid-goto-cc-emboss/emboss-6.6.0'
> make: *** [build] Error 2
> 
> Review the full (conflicting) declarations here:
> 
> http://sources.debian.net/src/emboss/6.6.0-1/plplot/plplotP.h?hl=381#L377
> http://sources.debian.net/src/emboss/6.6.0-1/plplot/plhershey-unicode.h?hl=46#L42
> 
> As plcore.c (via plcore.h) solely includes plplotP.h, all accesses in this code
> will be misaligned with arbitrary consequences.
> 
> Best,
> Michael
> 
> PS.: As this bug appears to be entirely within an embedded code copy of plplot,
> maybe it's about time to get rid of that.
> 



> _______________________________________________
> Debian-med-packaging mailing list
> Debian-med-packaging at lists.alioth.debian.org
> http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/debian-med-packaging


-- 
http://fam-tille.de



More information about the Debian-med-packaging mailing list