Hi,
when I tried to compile libsigc++ with emscripten today (which basically
is compiling to LLVM bitcode with clang in my scenario) I got an error I
first thought would be emscripten-specific but then I tried to compile
it normally. Here are the error messages I get:
make all-recursive make[1]: Entering directory
'/home/jonas/build/libsigc++-2.3.1/build' Making all in sigc++
make[2]: Entering directory
'/home/jonas/build/libsigc++-2.3.1/build/sigc++' make all-am
make[3]: Entering directory
'/home/jonas/build/libsigc++-2.3.1/build/sigc++' depbase=`echo
signal.lo | sed 's|[^/]*$|.deps/&|;s|\.lo$||'`;\ /bin/sh ../libtool
--tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I.. -I../.. -Wall -g
-O2 -MT signal.lo -MD -MP -MF $depbase.Tpo -c -o signal.lo
../../sigc++/signal.cc &&\ mv -f $depbase.Tpo $depbase.Plo libtool:
compile: g++ -DHAVE_CONFIG_H -I.. -I../.. -Wall -g -O2 -MT signal.lo
-MD -MP -MF .deps/signal.Tpo -c ../../sigc++/signal.cc -fPIC -DPIC
-o .libs/signal.o In file included from
../../sigc++/signal_base.h:29:0, from ../../sigc++/signal.h:8, from
../../sigc++/signal.cc:20: ../../sigc++/functors/slot.h: In static
member function 'static T_return
sigc::internal::slot_call1<T_functor, T_return,
T_arg1>::call_it(sigc::internal::slot_rep*, typename
sigc::type_trait<T_arg3>::take)':
../../sigc++/functors/slot.h:136:106: error: expected '(' before '>'
token return
(typed_rep->functor_).SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename
type_trait<T_arg1>::take> ^ ../../sigc++/functors/slot.h: In static
member function 'static T_return
sigc::internal::slot_call2<T_functor, T_return, T_arg1,
T_arg2>::call_it(sigc::internal::slot_rep*, typename
sigc::type_trait<T_arg3>::take, typename
sigc::type_trait<T_arg4>::take)':
../../sigc++/functors/slot.h:172:106: error: expected '(' before ','
token return
(typed_rep->functor_).SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename
type_trait<T_arg1>::take, typename type_trait<T_arg2>::take> ^ In
file included from ../../sigc++/signal_base.h:29:0, from
../../sigc++/signal.h:8, from ../../sigc++/signal.cc:20:
../../sigc++/functors/slot.h:172:141: error: expected '(' before '>'
token return
(typed_rep->functor_).SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename
type_trait<T_arg1>::take, typename type_trait<T_arg2>::take> ^
../../sigc++/functors/slot.h: In static member function 'static
T_return sigc::internal::slot_call3<T_functor, T_return, T_arg1,
T_arg2, T_arg3>::call_it(sigc::internal::slot_rep*, typename
sigc::type_trait<T_arg3>::take, typename
sigc::type_trait<T_arg4>::take, typename
sigc::type_trait<T_arg5>::take)':
../../sigc++/functors/slot.h:210:106: error: expected '(' before ','
token return
(typed_rep->functor_).SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename
type_trait<T_arg1>::take, typename type_trait<T_arg2>::take,
typename type_trait<T_arg3>::take> ^
../../sigc++/functors/slot.h:210:141: error: expected '(' before ','
token return
(typed_rep->functor_).SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename
type_trait<T_arg1>::take, typename type_trait<T_arg2>::take,
typename type_trait<T_arg3>::take> ^
../../sigc++/functors/slot.h:210:176: error: expected '(' before '>'
token return
(typed_rep->functor_).SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename
type_trait<T_arg1>::take, typename type_trait<T_arg2>::take,
typename type_trait<T_arg3>::take> ^ ../../sigc++/functors/slot.h:
In static member function 'static T_return
sigc::internal::slot_call4<T_functor, T_return, T_arg1, T_arg2,
T_arg3, T_arg4>::call_it(sigc::internal::slot_rep*, typename
sigc::type_trait<T_arg3>::take, typename
sigc::type_trait<T_arg4>::take, typename
sigc::type_trait<T_arg5>::take, typename
sigc::type_trait<T_arg6>::take)':
../../sigc++/functors/slot.h:250:106: error: expected '(' before ','
token return
(typed_rep->functor_).SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename
type_trait<T_arg1>::take, typename type_trait<T_arg2>::take,
typename type_trait<T_arg3>::take, typename
type_trait<T_arg4>::take> ^ ../../sigc++/functors/slot.h:250:141:
error: expected '(' before ',' token return
(typed_rep->functor_).SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename
type_trait<T_arg1>::take, typename type_trait<T_arg2>::take,
typename type_trait<T_arg3>::take, typename
type_trait<T_arg4>::take> ^ ../../sigc++/functors/slot.h:250:176:
error: expected '(' before ',' token return
(typed_rep->functor_).SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename
type_trait<T_arg1>::take, typename type_trait<T_arg2>::take,
typename type_trait<T_arg3>::take, typename
type_trait<T_arg4>::take> ^ ../../sigc++/functors/slot.h:250:211:
error: expected '(' before '>' token return
(typed_rep->functor_).SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename
type_trait<T_arg1>::take, typename type_trait<T_arg2>::take,
typename type_trait<T_arg3>::take, typename
type_trait<T_arg4>::take> ^ ../../sigc++/functors/slot.h: In static
member function 'static T_return
sigc::internal::slot_call5<T_functor, T_return, T_arg1, T_arg2,
T_arg3, T_arg4, T_arg5>::call_it(sigc::internal::slot_rep*, typename
sigc::type_trait<T_arg3>::take, typename
sigc::type_trait<T_arg4>::take, typename
sigc::type_trait<T_arg5>::take, typename
sigc::type_trait<T_arg6>::take, typename
sigc::type_trait<T_arg7>::take)':
../../sigc++/functors/slot.h:292:106: error: expected '(' before ','
token return
(typed_rep->functor_).SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename
type_trait<T_arg1>::take, typename type_trait<T_arg2>::take,
typename type_trait<T_arg3>::take, typename
type_trait<T_arg4>::take, typename type_trait<T_arg5>::take> ^
../../sigc++/functors/slot.h:292:141: error: expected '(' before ','
token return
(typed_rep->functor_).SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename
type_trait<T_arg1>::take, typename type_trait<T_arg2>::take,
typename type_trait<T_arg3>::take, typename
type_trait<T_arg4>::take, typename type_trait<T_arg5>::take> ^
../../sigc++/functors/slot.h:292:176: error: expected '(' before ','
token return
(typed_rep->functor_).SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename
type_trait<T_arg1>::take, typename type_trait<T_arg2>::take,
typename type_trait<T_arg3>::take, typename
type_trait<T_arg4>::take, typename type_trait<T_arg5>::take> ^
../../sigc++/functors/slot.h:292:211: error: expected '(' before ','
token return
(typed_rep->functor_).SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename
type_trait<T_arg1>::take, typename type_trait<T_arg2>::take,
typename type_trait<T_arg3>::take, typename
type_trait<T_arg4>::take, typename type_trait<T_arg5>::take> ^
../../sigc++/functors/slot.h:292:246: error: expected '(' before '>'
token return
(typed_rep->functor_).SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename
type_trait<T_arg1>::take, typename type_trait<T_arg2>::take,
typename type_trait<T_arg3>::take, typename
type_trait<T_arg4>::take, typename type_trait<T_arg5>::take> ^ In
file included from ../../sigc++/signal_base.h:29:0, from
../../sigc++/signal.h:8, from ../../sigc++/signal.cc:20:
../../sigc++/functors/slot.h: In static member function 'static
T_return sigc::internal::slot_call6<T_functor, T_return, T_arg1,
T_arg2, T_arg3, T_arg4, T_arg5,
T_arg6>::call_it(sigc::internal::slot_rep*, typename
sigc::type_trait<T_arg3>::take, typename
sigc::type_trait<T_arg4>::take, typename
sigc::type_trait<T_arg5>::take, typename
sigc::type_trait<T_arg6>::take, typename
sigc::type_trait<T_arg7>::take, typename
sigc::type_trait<T_arg6>::take)':
../../sigc++/functors/slot.h:336:106: error: expected '(' before ','
token return
(typed_rep->functor_).SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename
type_trait<T_arg1>::take, typename type_trait<T_arg2>::take,
typename type_trait<T_arg3>::take, typename
type_trait<T_arg4>::take, typename type_trait<T_arg5>::take,
typename type_trait<T_arg6>::take> ^
../../sigc++/functors/slot.h:336:141: error: expected '(' before ','
token return
(typed_rep->functor_).SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename
type_trait<T_arg1>::take, typename type_trait<T_arg2>::take,
typename type_trait<T_arg3>::take, typename
type_trait<T_arg4>::take, typename type_trait<T_arg5>::take,
typename type_trait<T_arg6>::take> ^
../../sigc++/functors/slot.h:336:176: error: expected '(' before ','
token return
(typed_rep->functor_).SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename
type_trait<T_arg1>::take, typename type_trait<T_arg2>::take,
typename type_trait<T_arg3>::take, typename
type_trait<T_arg4>::take, typename type_trait<T_arg5>::take,
typename type_trait<T_arg6>::take> ^
../../sigc++/functors/slot.h:336:211: error: expected '(' before ','
token return
(typed_rep->functor_).SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename
type_trait<T_arg1>::take, typename type_trait<T_arg2>::take,
typename type_trait<T_arg3>::take, typename
type_trait<T_arg4>::take, typename type_trait<T_arg5>::take,
typename type_trait<T_arg6>::take> ^
../../sigc++/functors/slot.h:336:246: error: expected '(' before ','
token return
(typed_rep->functor_).SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename
type_trait<T_arg1>::take, typename type_trait<T_arg2>::take,
typename type_trait<T_arg3>::take, typename
type_trait<T_arg4>::take, typename type_trait<T_arg5>::take,
typename type_trait<T_arg6>::take> ^
../../sigc++/functors/slot.h:336:281: error: expected '(' before '>'
token return
(typed_rep->functor_).SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename
type_trait<T_arg1>::take, typename type_trait<T_arg2>::take,
typename type_trait<T_arg3>::take, typename
type_trait<T_arg4>::take, typename type_trait<T_arg5>::take,
typename type_trait<T_arg6>::take> ^ ../../sigc++/functors/slot.h:
In static member function 'static T_return
sigc::internal::slot_call7<T_functor, T_return, T_arg1, T_arg2,
T_arg3, T_arg4, T_arg5, T_arg6,
T_arg7>::call_it(sigc::internal::slot_rep*, typename
sigc::type_trait<T_arg3>::take, typename
sigc::type_trait<T_arg4>::take, typename
sigc::type_trait<T_arg5>::take, typename
sigc::type_trait<T_arg6>::take, typename
sigc::type_trait<T_arg7>::take, typename
sigc::type_trait<T_arg6>::take, typename
sigc::type_trait<T_arg7>::take)':
../../sigc++/functors/slot.h:382:106: error: expected '(' before ','
token return
(typed_rep->functor_).SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename
type_trait<T_arg1>::take, typename type_trait<T_arg2>::take,
typename type_trait<T_arg3>::take, typename
type_trait<T_arg4>::take, typename type_trait<T_arg5>::take,
typename type_trait<T_arg6>::take, typename
type_trait<T_arg7>::take> ^ ../../sigc++/functors/slot.h:382:141:
error: expected '(' before ',' token return
(typed_rep->functor_).SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename
type_trait<T_arg1>::take, typename type_trait<T_arg2>::take,
typename type_trait<T_arg3>::take, typename
type_trait<T_arg4>::take, typename type_trait<T_arg5>::take,
typename type_trait<T_arg6>::take, typename
type_trait<T_arg7>::take> ^ ../../sigc++/functors/slot.h:382:176:
error: expected '(' before ',' token return
(typed_rep->functor_).SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename
type_trait<T_arg1>::take, typename type_trait<T_arg2>::take,
typename type_trait<T_arg3>::take, typename
type_trait<T_arg4>::take, typename type_trait<T_arg5>::take,
typename type_trait<T_arg6>::take, typename
type_trait<T_arg7>::take> ^ ../../sigc++/functors/slot.h:382:211:
error: expected '(' before ',' token return
(typed_rep->functor_).SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename
type_trait<T_arg1>::take, typename type_trait<T_arg2>::take,
typename type_trait<T_arg3>::take, typename
type_trait<T_arg4>::take, typename type_trait<T_arg5>::take,
typename type_trait<T_arg6>::take, typename
type_trait<T_arg7>::take> ^ ../../sigc++/functors/slot.h:382:246:
error: expected '(' before ',' token return
(typed_rep->functor_).SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename
type_trait<T_arg1>::take, typename type_trait<T_arg2>::take,
typename type_trait<T_arg3>::take, typename
type_trait<T_arg4>::take, typename type_trait<T_arg5>::take,
typename type_trait<T_arg6>::take, typename
type_trait<T_arg7>::take> ^ ../../sigc++/functors/slot.h:382:281:
error: expected '(' before ',' token return
(typed_rep->functor_).SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename
type_trait<T_arg1>::take, typename type_trait<T_arg2>::take,
typename type_trait<T_arg3>::take, typename
type_trait<T_arg4>::take, typename type_trait<T_arg5>::take,
typename type_trait<T_arg6>::take, typename
type_trait<T_arg7>::take> ^ ../../sigc++/functors/slot.h:382:316:
error: expected '(' before '>' token return
(typed_rep->functor_).SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename
type_trait<T_arg1>::take, typename type_trait<T_arg2>::take,
typename type_trait<T_arg3>::take, typename
type_trait<T_arg4>::take, typename type_trait<T_arg5>::take,
typename type_trait<T_arg6>::take, typename
type_trait<T_arg7>::take> ^ Makefile:568: recipe for target
'signal.lo' failed make[3]: *** [signal.lo] Error 1 make[3]: Leaving
directory '/home/jonas/build/libsigc++-2.3.1/build/sigc++'
Makefile:440: recipe for target 'all' failed make[2]: *** [all]
Error 2 make[2]: Leaving directory
'/home/jonas/build/libsigc++-2.3.1/build/sigc++' Makefile:635:
recipe for target 'all-recursive' failed make[1]: ***
[all-recursive] Error 1 make[1]: Leaving directory
'/home/jonas/build/libsigc++-2.3.1/build' Makefile:503: recipe for
target 'all' failed make: *** [all] Error 2
I also get an error message when running configure, this might be related:
[...]
checking pkg-config is at least version 0.9.0... yes
checking for libstdc documentation...
/usr/share/mm-common/doctags/libstdc++.tag@http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen
../configure: line 16133:
SIGC_CXX_GCC_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD: command not
found
../configure: line 16134:
SIGC_CXX_MSVC_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD: command not
found
../configure: line 16135:
SIGC_CXX_SELF_REFERENCE_IN_MEMBER_INITIALIZATION: command not found
../configure: line 16136: SIGC_CXX_HAS_NAMESPACE_STD: command not found
../configure: line 16137: SIGC_CXX_HAS_SUN_REVERSE_ITERATOR: command
not found
checking which C++ compiler warning flags to use... -Wall
checking that generated files are newer than configure... done
configure: creating ./config.status
[...]
_______________________________________________
libsigc-list mailing list
[email protected]
https://mail.gnome.org/mailman/listinfo/libsigc-list