Bug#748986: Conflicting types as recode.c lacks #include <config.h>
Michael Tautschnig
mt at debian.org
Thu May 22 20:44:54 UTC 2014
Package: libdv
Version: 1.0.0-6
Usertags: goto-cc
Tags: upstream
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.
[...]
/bin/bash ../libtool --silent --tag=CC --mode=link gcc -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -g -Wl,-z,relro -o recode recode.o libdv.la -lm
error: conflicting function declarations "dv_format_wide"
old definition in module recode file ../libdv/dv.h line 123
signed int (struct dv_decoder_s *)
new definition in module dv file dv.c line 726
signed int (struct dv_decoder_s *dv)
reason for conflict in types listed below (struct/struct):
composite type component counts differ (25/26)
struct dv_decoder_s {
unsigned int quality;
int system;
int std;
int sampling;
signed int num_dif_seqs;
signed int height;
signed int width;
unsigned int $pad0;
unsigned long int frame_size;
dv_header_t header;
dv_audio_t * audio;
dv_video_t * video;
signed int arg_video_system;
signed int add_ntsc_setup;
signed int clamp_luma;
signed int clamp_chroma;
signed int prev_frame_decoded;
unsigned char vaux_next;
unsigned char [256l] vaux_pack;
unsigned char [45l][4l] vaux_data;
unsigned char ssyb_next;
unsigned char [256l] ssyb_pack;
unsigned char [45l][4l] ssyb_data;
unsigned short int $pad1;
struct bitstream_s * bs;
}
struct dv_decoder_s {
unsigned int quality;
int system;
int std;
int sampling;
signed int num_dif_seqs;
signed int height;
signed int width;
unsigned int $pad0;
unsigned long int frame_size;
dv_header_t header;
dv_audio_t * audio;
dv_video_t * video;
signed int arg_video_system;
signed int add_ntsc_setup;
signed int clamp_luma;
signed int clamp_chroma;
signed int prev_frame_decoded;
unsigned char vaux_next;
unsigned char [256l] vaux_pack;
unsigned char [45l][4l] vaux_data;
unsigned char ssyb_next;
unsigned char [256l] ssyb_pack;
unsigned char [45l][4l] ssyb_data;
unsigned short int $pad1;
struct bitstream_s * bs;
struct poptOption [6l] option_table;
}
Makefile:547: recipe for target 'recode' failed
make[4]: *** [recode] Error 64
make[4]: Leaving directory '/srv/jenkins-slave/workspace/sid-goto-cc-libdv/libdv-1.0.0/libdv'
Makefile:452: recipe for target 'all' failed
This type conflict is caused by HAVE_LIBPOPT not being uniformly defined, which
in turn is due to a missing #include <config.h> in recode.c (likely just an
oversight).
Best,
Michael
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 859 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/pkg-multimedia-maintainers/attachments/20140522/e00547c5/attachment.sig>
More information about the pkg-multimedia-maintainers
mailing list