Hi,
On Sat, Apr 23, 2016 at 07:05:23PM -0700, Martin Michlmayr wrote:
> Package: mpd
> Version: 0.19.14-1
> Severity: serious
>
> This package fails to build in unstable:
>
> > sbuild (Debian sbuild) 0.68.0 (15 Jan 2016) on dl580gen9-02.hlinux
> ...
> > g++ -DHAVE_CONFIG_H -I. -DNDEBUG -I./src -pthread -isystem
> > /usr/include/glib-2.0 -isystem /usr/lib/x86_64-linux-gnu/glib-2.0/include
> > -I/usr/include -DSYSTEM_CONFIG_FILE_LOCATION='"/etc/mpd.conf"'
> > -I/usr/include/opus -I/usr/include/x86_64-linux-gnu
> > -I/usr/include/libbinio -Wdate-time -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE
> > -std=gnu++0x -pthread -g -O2 -fPIE -fstack-protector-strong -Wformat
> > -Werror=format-security -fvisibility=hidden -fno-threadsafe-statics
> > -fmerge-all-constants -fno-exceptions -fno-rtti -ffast-math
> > -ftree-vectorize -ffunction-sections -fdata-sections -Wall -Wextra
> > -Wmissing-declarations -Wshadow -Wpointer-arith -Wcast-qual -Wwrite-strings
> > -Wsign-compare -c -o src/decoder/plugins/libdecoder_a-OggFind.o `test -f
> > 'src/decoder/plugins/OggFind.cxx' || echo
> > './'`src/decoder/plugins/OggFind.cxx
> > In file included from src/decoder/DecoderBuffer.cxx:21:0:
> > src/decoder/DecoderBuffer.hxx:41:20: error: 'uint8_t' was not declared in
> > this scope
> > DynamicFifoBuffer buffer;
> > ^
> > src/decoder/DecoderBuffer.hxx:41:27: error: template argument 1 is invalid
> > DynamicFifoBuffer buffer;
> >^
> > src/decoder/DecoderBuffer.hxx: In member function 'void
> > DecoderBuffer::Clear()':
> > src/decoder/DecoderBuffer.hxx:61:10: error: request for member 'Clear' in
> > '((DecoderBuffer*)this)->DecoderBuffer::buffer', which is of non-class type
> > 'int'
> >buffer.Clear();
> > ^
> > src/decoder/DecoderBuffer.hxx: In member function 'size_t
> > DecoderBuffer::GetAvailable() const':
> > src/decoder/DecoderBuffer.hxx:78:17: error: request for member
> > 'GetAvailable' in '((const DecoderBuffer*)this)->DecoderBuffer::buffer',
> > which is of non-class type 'const int'
> >return buffer.GetAvailable();
> > ^
> > src/decoder/DecoderBuffer.hxx: In member function 'ConstBuffer
> > DecoderBuffer::Read() const':
> > src/decoder/DecoderBuffer.hxx:87:19: error: request for member 'Read' in
> > '((const DecoderBuffer*)this)->DecoderBuffer::buffer', which is of
> > non-class type 'const int'
> >auto r = buffer.Read();
> >^
> > src/decoder/DecoderBuffer.hxx:88:27: error: could not convert '{ > error>, }' from '' to
> > 'ConstBuffer'
> >return { r.data, r.size };
> >^
> > src/decoder/DecoderBuffer.hxx: In member function 'void
> > DecoderBuffer::Consume(size_t)':
> > src/decoder/DecoderBuffer.hxx:105:10: error: request for member 'Consume'
> > in '((DecoderBuffer*)this)->DecoderBuffer::buffer', which is of non-class
> > type 'int'
> >buffer.Consume(nbytes);
> > ^
This seems to be caused by a lacking include, fixed by the below patch.
I'm unsure what made this appear now, though, compiler and toolchain
libraries seem to be the same upstream versions that built 0.19.14-1
just fine in late March.
diff --git a/src/decoder/DecoderBuffer.hxx b/src/decoder/DecoderBuffer.hxx
index 9cf47d9..db5b30e 100644
--- a/src/decoder/DecoderBuffer.hxx
+++ b/src/decoder/DecoderBuffer.hxx
@@ -25,6 +25,7 @@
#include "util/ConstBuffer.hxx"
#include
+#include
struct Decoder;
class InputStream;
Florian