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<uint8_t> buffer;
> >                     ^
> > src/decoder/DecoderBuffer.hxx:41:27: error: template argument 1 is invalid
> >   DynamicFifoBuffer<uint8_t> 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<void> 
> > 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 '{<expression 
> > error>, <expression error>}' from '<brace-enclosed initializer list>' to 
> > 'ConstBuffer<void>'
> >    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 <stddef.h>
+#include <stdint.h>
 
 struct Decoder;
 class InputStream;


Florian

Reply via email to