Package: madman
Version: 0.94beta1.20060611-2
Usertags: ftbfs-gcc-4.3

Your package fails to build with GCC 4.3.  Version 4.3 has not been
released yet but I'm building with a snapshot in order to find errors
and give people an advance warning.  In GCC 4.3, the C++ header
dependencies have been cleaned up.  The advantage of this is that
programs will compile faster.  The downside is that you actually
need to directly #include everything you use (but you really should
do this anyway, otherwise your program won't work with any compiler
other than GCC).  There's some more information about this at
http://www.cyrius.com/journal/2007/05/10#gcc-4.3-include

You can reproduce this problem with gcc-snapshot from unstable.  Note
that Red Hat, Novell and Ubuntu have done some work getting packages
to build with GCC 4.3 so there might be patches floating around
somewhere.  I suggest you talk to your upstream.

> Automatic build of madman_0.94beta1.20060611-2 on em64t by sbuild/amd64 0.53
...
> scons: Building targets ...
> g++ -pthread -DMADMAN_VERSION=0.94beta1 -DNDEBUG=1 -I/usr/share/qt3/include 
> -I. -I/usr/share/qt3/include -I/usr/include/glib-1.2 -I/usr/lib/glib/include 
> -I/usr/include/taglib -c -o ,build/release/database/auto_dj.o 
> database/auto_dj.cpp
> In file included from 
> /usr/lib/gcc-snapshot/lib/gcc/x86_64-linux-gnu/4.3.0/../../../../include/c++/4.3.0/ext/hash_map:64,
>                  from ./utility/base.h:40,
>                  from database/auto_dj.h:26,
>                  from database/auto_dj.cpp:37:
> /usr/lib/gcc-snapshot/lib/gcc/x86_64-linux-gnu/4.3.0/../../../../include/c++/4.3.0/backward/backward_warning.h:32:2:
>  warning: #warning This file includes at least one deprecated or antiquated 
> header. Please consider use of an equivalent, non-deprecated interface for 
> the requested functionality. A list of valid replacements is as follows: Use: 
> Instead of: <sstream>, basic_stringbuf <strstream>, strstreambuf <sstream>, 
> basic_istringstream <strstream>, istrstream <sstream>, basic_ostringstream 
> <strstream>, ostrstream <sstream>, basic_stringstream <strstream>, strstream 
> <unordered_set>, unordered_set <ext/hash_set>, hash_set <unordered_set>, 
> unordered_multiset <ext/hash_set>, hash_multiset <unordered_map>, 
> unordered_map <ext/hash_set>, hash_map <unordered_map>, unordered_multimap 
> <ext/hash_set>, hash_multimap <functional>, bind <functional>, binder1st 
> <functional>, bind <functional>, binder2nd <functional>, bind <functional>, 
> bind1st <functional>, bind <functional>, bind2nd <memory>, unique_ptr 
> <memory>, auto_ptr To disable this warning use -Wno-deprecated.
> In file included from database/auto_dj.cpp:38:
> ./database/criterion.h:71: error: ISO C++ forbids declaration of 'auto_ptr' 
> with no type
> ./database/criterion.h:71: error: expected ';' before '<' token
> ./database/criterion.h: In constructor 
> 'tOrCriterion::tOrCriterion(tCriterion*, tCriterion*)':
> ./database/criterion.h:74: error: class 'tOrCriterion' does not have any 
> field named 'Operand1'
> ./database/criterion.h:74: error: class 'tOrCriterion' does not have any 
> field named 'Operand2'
> ./database/criterion.h: In member function 'virtual float 
> tOrCriterion::matchDegree(const tSong*) const':
> ./database/criterion.h:78: error: 'Operand1' was not declared in this scope
> ./database/criterion.h:78: error: 'Operand2' was not declared in this scope
> ./database/criterion.h: In member function 'virtual bool 
> tOrCriterion::notifying() const':
> ./database/criterion.h:81: error: 'Operand1' was not declared in this scope
> ./database/criterion.h:81: error: 'Operand2' was not declared in this scope
> ./database/criterion.h: At global scope:
> ./database/criterion.h:89: error: ISO C++ forbids declaration of 'auto_ptr' 
> with no type
> ./database/criterion.h:89: error: expected ';' before '<' token
> ./database/criterion.h: In constructor 
> 'tAndCriterion::tAndCriterion(tCriterion*, tCriterion*)':
> ./database/criterion.h:92: error: class 'tAndCriterion' does not have any 
> field named 'Operand1'
> ./database/criterion.h:92: error: class 'tAndCriterion' does not have any 
> field named 'Operand2'
> ./database/criterion.h: In member function 'virtual float 
> tAndCriterion::matchDegree(const tSong*) const':
> ./database/criterion.h:96: error: 'Operand1' was not declared in this scope
> ./database/criterion.h:96: error: 'Operand2' was not declared in this scope
> ./database/criterion.h: In member function 'virtual bool 
> tAndCriterion::notifying() const':
> ./database/criterion.h:99: error: 'Operand1' was not declared in this scope
> ./database/criterion.h:99: error: 'Operand2' was not declared in this scope
> ./database/criterion.h: At global scope:
> ./database/criterion.h:107: error: ISO C++ forbids declaration of 'auto_ptr' 
> with no type
> ./database/criterion.h:107: error: expected ';' before '<' token
> ./database/criterion.h: In constructor 
> 'tNotCriterion::tNotCriterion(tCriterion*)':
> ./database/criterion.h:110: error: class 'tNotCriterion' does not have any 
> field named 'Operand'
> ./database/criterion.h: In member function 'virtual float 
> tNotCriterion::matchDegree(const tSong*) const':
> ./database/criterion.h:114: error: 'Operand' was not declared in this scope
> ./database/criterion.h: In member function 'virtual bool 
> tNotCriterion::notifying() const':
> ./database/criterion.h:117: error: 'Operand' was not declared in this scope
> ./database/criterion.h: At global scope:
> ./database/criterion.h:123: error: expected constructor, destructor, or type 
> conversion before '<' token
> database/auto_dj.cpp: In member function 'void tAutoDJ::addCriterion(const 
> QString&, int)':
> database/auto_dj.cpp:162: error: 'parseCriterion' was not declared in this 
> scope
> scons: *** [,build/release/database/auto_dj.o] Error 1
> scons: building terminated because of errors.
> make: *** [build-stamp] Error 2

-- 
Martin Michlmayr
http://www.cyrius.com/


Reply via email to