Package: xqilla
Version: 2.0.0-2.2
User: [EMAIL PROTECTED]
Usertags: ftbfs-gcc-4.4
Tags: patch

Your package fails to build with the upcoming GCC 4.4.  Version 4.4
has not been released yet but I'm building with a snapshot in order
to find errors and give people an advance warning.

GCC 4.4 cleaned up some more C++ headers.  You always have to #include
headers directly and cannot rely for things to be included indirectly.

You can reproduce this problem with gcc-snapshot from unstable.

> Automatic build of xqilla_2.0.0-2.2 on em64t by sbuild/amd64 0.53
...
>  x86_64-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I./src/config -I./include/ 
> -I/usr//src -I./src/lexer/ -D_GNU_SOURCE -D_REENTRANT -g -O2 
> -I/build/tbm/xqilla-2.0.0/debian/xercesc-private/ -ftemplate-depth-50 -MT 
> Numeric.lo -MD -MP -MF .deps/Numeric.Tpo -c src/items/Numeric.cpp  -fPIC 
> -DPIC -o .libs/Numeric.o
> src/items/Numeric.cpp: In static member function 'static const XMLCh* 
> Numeric::asDoubleString(Numeric::State, const MAPM&, int, const 
> StaticContext*)':
> src/items/Numeric.cpp:349: error: 'sprintf' was not declared in this scope
> src/items/Numeric.cpp:360: error: 'sprintf' was not declared in this scope
> make[2]: *** [Numeric.lo] Error 1
> make[2]: Leaving directory `/build/tbm/xqilla-2.0.0'

--- src/items/Numeric.cpp~      2008-11-08 08:49:49.000000000 +0000
+++ src/items/Numeric.cpp       2008-11-08 08:50:50.000000000 +0000
@@ -34,6 +34,8 @@
 #include <xercesc/util/XMLUniDefs.hpp>
 #include <xercesc/validators/schema/SchemaSymbols.hpp>
 
+#include <cstdio>
+
 #ifndef min
 #define min(a,b) ((a) < (b) ? (a) : (b))
 #endif
--- src/parser/XQParser.cpp~    2008-11-08 08:51:17.000000000 +0000
+++ src/parser/XQParser.cpp     2008-11-08 08:57:09.000000000 +0000
@@ -59,6 +59,7 @@
 #define YYLSP_NEEDED 1
 
 
+#include <cstdio>
 
 /* Tokens.  */
 #ifndef YYTOKENTYPE
--- src/lexer/XQLexer.cpp~      2008-11-08 09:14:00.000000000 +0000
+++ src/lexer/XQLexer.cpp       2008-11-08 09:14:15.000000000 +0000
@@ -26,6 +26,7 @@
 #define YY_FLEX_MAJOR_VERSION 2
 #define YY_FLEX_MINOR_VERSION 5
 
+#include <cstdio>
 
 
 /* cfront 1.2 defines "c_plusplus" instead of "__cplusplus" */

Note that I modified the .cpp files rather than .l because flex in
Debian cannot build them.  Also, there's a note about stdio.h in at
least one of the .l files, so I'm not sure whether the patch is
acceptable as it is.  But at least it shows you the issues which gcc
4.4 has with the code.

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



-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to