Package: grap
Version: 1.40-1
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 grap_1.40-1 on em64t by sbuild/amd64 0.53
...
> mv y.tab.c grap.cc
> x86_64-linux-gnu-g++ -Wall -DHAVE_CONFIG_H  -c -o grap.o grap.cc
> In file included from 
> /usr/lib/gcc-snapshot/lib/gcc/x86_64-linux-gnu/4.3.0/../../../../include/c++/4.3.0/backward/hash_map:64,
>                  from grap.h:85,
>                  from grap.y:28:
> /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 grap.y:28:
> grap.h:90: error: ISO C++ forbids declaration of 'hash' with no type
> grap.h:90: error: expected ';' before '<' token
> grap.h: In member function 'size_t Strhash::operator()(const std::string&) 
> const':
> grap.h:93: error: 'h' was not declared in this scope
> grap.h: At global scope:
> grap.h:97: error: expected initializer before '<' token
> grap.h:98: error: expected initializer before '<' token
> grap.h:99: error: expected initializer before '<' token
> grap.h:100: error: expected initializer before '<' token
> grap.h:101: error: expected initializer before '<' token
> In file included from grap.y:30:
> grap_draw.h: In constructor 'DisplayString::DisplayString(double, const 
> DisplayString*)':
> grap_draw.h:193: warning: deprecated conversion from string constant to 
> 'char*'
> grap_draw.h: In constructor 'frame::frame()':
> grap_draw.h:430: warning: deprecated conversion from string constant to 
> 'char*'
> grap_draw.h: At global scope:
> grap_draw.h:636: error: 'coordinateDictionary' was not declared in this scope
> grap_draw.h:636: error: wrong number of template arguments (1, should be 2)
> /usr/lib/gcc-snapshot/lib/gcc/x86_64-linux-gnu/4.3.0/../../../../include/c++/4.3.0/bits/stl_function.h:103:
>  error: provided for 'template<class _Arg, class _Result> struct 
> std::unary_function'
> grap_draw.h:638: error: 'coordinateDictionary' has not been declared
> grap_draw.h:638: error: expected ',' or '...' before 'ci'
> grap_draw.h:647: error: 'lineDictionary' was not declared in this scope
> grap_draw.h:647: error: wrong number of template arguments (1, should be 2)
> /usr/lib/gcc-snapshot/lib/gcc/x86_64-linux-gnu/4.3.0/../../../../include/c++/4.3.0/bits/stl_function.h:103:
>  error: provided for 'template<class _Arg, class _Result> struct 
> std::unary_function'
> grap_draw.h:649: error: 'lineDictionary' has not been declared
> grap_draw.h:649: error: expected ',' or '...' before 'li'
> grap_draw.h:658: error: 'coordinateDictionary' was not declared in this scope
> grap_draw.h:658: error: wrong number of template arguments (1, should be 2)
> /usr/lib/gcc-snapshot/lib/gcc/x86_64-linux-gnu/4.3.0/../../../../include/c++/4.3.0/bits/stl_function.h:103:
>  error: provided for 'template<class _Arg, class _Result> struct 
> std::unary_function'
> grap_draw.h:660: error: 'coordinateDictionary' has not been declared
> grap_draw.h:660: error: expected ',' or '...' before 'cp'
> grap_draw.h:669: error: 'coordinateDictionary' does not name a type
> grap_draw.h:670: error: 'lineDictionary' does not name a type
> grap_draw.h: In member function 'int graph::coord_freer_f::operator()(int)':
> grap_draw.h:639: error: 'ci' was not declared in this scope
> grap_draw.h: In member function 'int graph::line_freer_f::operator()(int)':
> grap_draw.h:650: error: 'li' was not declared in this scope
> grap_draw.h: In member function 'int graph::addmargin_f::operator()(int)':
> grap_draw.h:661: error: 'cp' was not declared in this scope
> grap_draw.h: In constructor 'graph::graph()':
> grap_draw.h:675: error: class 'graph' does not have any field named 'coords'
> grap_draw.h:675: error: class 'graph' does not have any field named 'lines'
> grap_draw.h: In member function 'virtual void graph::init(std::string*, 
> std::string*)':
> grap_draw.h:691: error: 'coordinateDictionary' has not been declared
> grap_draw.h:691: error: expected `;' before 'c'
> grap_draw.h:692: error: 'lineDictionary' has not been declared
> grap_draw.h:692: error: expected `;' before 'l'
> grap_draw.h:700: error: 'c' was not declared in this scope
> grap_draw.h:700: error: 'coords' was not declared in this scope
> grap_draw.h:704: error: 'l' was not declared in this scope
> grap_draw.h:704: error: 'lines' was not declared in this scope
> grap.y: At global scope:
> grap.y:32: error: 'doubleDictionary' does not name a type
> grap.y:35: error: 'macroDictionary' does not name a type
> grap.y: In function 'int yyparse()':
> grap.y:482: error: 'doubleDictionary' has not been declared
> grap.y:482: error: expected `;' before 'di'
> grap.y:484: error: 'di' was not declared in this scope
> grap.y:484: error: 'vars' was not declared in this scope
> grap.y:797: error: 'coordinateDictionary' has not been declared
> grap.y:797: error: expected `;' before 'ci'
> grap.y:800: error: 'ci' was not declared in this scope
> grap.y:800: error: 'class graph' has no member named 'coords'
> grap.y:801: error: 'class graph' has no member named 'coords'
> grap.y:804: warning: deprecated conversion from string constant to 'char*'
> grap.y:992: warning: deprecated conversion from string constant to 'char*'
> grap.y:1078: error: 'macros' was not declared in this scope
> grap.y:1223: warning: deprecated conversion from string constant to 'char*'
> y.tab.c:3682: warning: deprecated conversion from string constant to 'char*'
> y.tab.c:3828: warning: deprecated conversion from string constant to 'char*'
> make[1]: *** [grap.o] Error 1

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


Reply via email to