[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: gcc: Internal compiler error during automatic build of synergy on sarti



> > Hello
> > During the automatic build of the package `synergy' by sbuild/hppa
> > on the host `sarti', the following error occured:
> 
> Analysis has begun.
> I'll run it against the unstable toolchain, and get back to the list
> with my results.
> 

Testing with:

g++-3.2               3.2.1-0pre3           The GNU C++ compiler.
binutils              2.13.90.0.4-1         The GNU assembler, linker and binary utilities.
libstdc++5            3.2.1-0pre3           The GNU stdc++ library version 3
libc6                 2.2.5-14.3            GNU C Library: Shared libraries and Timezone data

No compiler ICE'ing :)

---

In synergy-0.9.12/lib/base/CLog.h, the following is defined:

    191 #if defined(NOLOGGING)
    192 #define log(_a1)
    193 #define logc(_a1, _a2)
    194 #define CLOG_TRACE 
    195 #elif defined(NDEBUG)
    196 #define log(_a1)                CLog::print _a1
    197 #define logc(_a1, _a2)  if (_a1) CLog::print _a2 
    198 #define CLOG_TRACE
    199 #else
    200 #define log(_a1)                CLog::printt _a1
    201 #define logc(_a1, _a2)  if (_a1) CLog::printt _a2
    202 #define CLOG_TRACE              __FILE__, __LINE__,
    203 #endif

Since CHTTPProtocol.cpp plans on including stdsstream, you cannot
define 'log' to be something arbitrary without causing havok with
mathcalls.h (logarithm).

Thus under gcc-3.2 the following build error ensues:

g++-3.2 -DHAVE_CONFIG_H -I. -I. -I../.. -I.//../../lib/base -I.//../../lib/mt -I.//../../lib/io     -g -O2  -I/usr/X11R6/include -pthread -c -o CHTTPProtocol.o `test -f CHTTPProtocol.cpp || echo './'`CHTTPProtocol.cpp
In file included from /usr/include/math.h:63,
                 from /usr/include/c++/3.2/cmath:51,
                 from /usr/include/c++/3.2/bits/locale_facets.tcc:41,
                 from /usr/include/c++/3.2/locale:46,
                 from /usr/include/c++/3.2/bits/istream.tcc:37,
                 from /usr/include/c++/3.2/istream:297,
                 from /usr/include/c++/3.2/sstream:44,
                 from ../../lib/base/stdsstream.h:19,
                 from CHTTPProtocol.cpp:20:
/usr/include/bits/mathcalls.h:112: syntax error before `double'
/usr/include/c++/3.2/cmath:80: confused by earlier errors, bailing out

Obviously since the math library defines for log are being redefined by CLog.h
Please talk to upstream about this.

c.



Reply to: