7a706b90c3
clang 2.8 compiles SyncEvolution + Synthesis faster than g++ 4.4.5 (3:40min instead of 4:10min on my laptop) and produces more useful error reports. This patch fixes the code so that it compiles cleanly with clang when using "-Wall -Werror -Wno-unknown-pragmas". Note that clang 2.6 (Debian Squeeze) goes into an infinite recursion compiling code using gdbus-cxx-bridge.h and dies eventually with a stack overflow - can't be used. Changes necessary for clang: - eptr pointer referencing ambiguous, use *x.get() instead - boost::intrusive_ptr* must be defined before code using it - two-phase template checking requires explicitly specifying members in base classes - name clashes with plain C structs (DBusServer, DBusWatch) are an error and need to be avoided (done with namespaces GDBusCXX and SyncEvo) - floats cannot be inline constants - unused methods in local classes are warned about (left() in SyncML.cpp) |
||
---|---|---|
.. | ||
example.cpp | ||
test-example |