current master won't compile for me

Questions, problems and discussion about compiling FreeOrion.
Post Reply
Message
Author
User avatar
Dilvish
AI Lead, Programmer
Posts: 4719
Joined: Sat Sep 22, 2012 6:25 pm

current master won't compile for me

#1 Post by Dilvish » Wed Jun 14, 2017 11:41 pm

current master won't compile for me, it's the recent commit that apparently has something to do with duplicating production queue progress? Like usual, I'm on Linux.

Code: Select all

In file included from /usr/include/x86_64-linux-gnu/c++/5/bits/c++allocator.h:33:0,
                 from /usr/include/c++/5/bits/allocator.h:46,
                 from /usr/include/c++/5/string:41,
                 from /home/FO/programs/fo_recov/GG/GG/Clr.h:32,
                 from /home/FO/programs/fo_recov/GG/GG/ClrConstants.h:31,
                 from /home/FO/programs/fo_recov/GG/GG/Button.h:34,
                 from /home/FO/programs/fo_recov/UI/CUIWnd.h:5,
                 from /home/FO/programs/fo_recov/UI/ProductionWnd.h:4,
                 from /home/FO/programs/fo_recov/UI/ProductionWnd.cpp:1:
/usr/include/c++/5/ext/new_allocator.h: In instantiation of ‘void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = ProductionQueueOrder; _Args = {int&, long int&, long int&}; _Tp = ProductionQueueOrder]’:
/usr/include/c++/5/bits/alloc_traits.h:530:4:   required from ‘static void std::allocator_traits<std::allocator<_CharT> >::construct(std::allocator_traits<std::allocator<_CharT> >::allocator_type&, _Up*, _Args&& ...) [with _Up = ProductionQueueOrder; _Args = {int&, long int&, long int&}; _Tp = ProductionQueueOrder; std::allocator_traits<std::allocator<_CharT> >::allocator_type = std::allocator<ProductionQueueOrder>]’
/usr/include/c++/5/bits/shared_ptr_base.h:522:39:   required from ‘std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_Sp_counted_ptr_inplace(_Alloc, _Args&& ...) [with _Args = {int&, long int&, long int&}; _Tp = ProductionQueueOrder; _Alloc = std::allocator<ProductionQueueOrder>; __gnu_cxx::_Lock_policy _Lp = (__gnu_cxx::_Lock_policy)2u]’
/usr/include/c++/5/bits/shared_ptr_base.h:617:4:   required from ‘std::__shared_count<_Lp>::__shared_count(std::_Sp_make_shared_tag, _Tp*, const _Alloc&, _Args&& ...) [with _Tp = ProductionQueueOrder; _Alloc = std::allocator<ProductionQueueOrder>; _Args = {int&, long int&, long int&}; __gnu_cxx::_Lock_policy _Lp = (__gnu_cxx::_Lock_policy)2u]’
/usr/include/c++/5/bits/shared_ptr_base.h:1097:35:   required from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_make_shared_tag, const _Alloc&, _Args&& ...) [with _Alloc = std::allocator<ProductionQueueOrder>; _Args = {int&, long int&, long int&}; _Tp = ProductionQueueOrder; __gnu_cxx::_Lock_policy _Lp = (__gnu_cxx::_Lock_policy)2u]’
/usr/include/c++/5/bits/shared_ptr.h:319:64:   required from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_make_shared_tag, const _Alloc&, _Args&& ...) [with _Alloc = std::allocator<ProductionQueueOrder>; _Args = {int&, long int&, long int&}; _Tp = ProductionQueueOrder]’
/usr/include/c++/5/bits/shared_ptr.h:620:39:   required from ‘std::shared_ptr<_Tp1> std::allocate_shared(const _Alloc&, _Args&& ...) [with _Tp = ProductionQueueOrder; _Alloc = std::allocator<ProductionQueueOrder>; _Args = {int&, long int&, long int&}]’
/usr/include/c++/5/bits/shared_ptr.h:635:39:   required from ‘std::shared_ptr<_Tp1> std::make_shared(_Args&& ...) [with _Tp = ProductionQueueOrder; _Args = {int&, long int&, long int&}]’
/home/FO/programs/fo_recov/UI/ProductionWnd.cpp:964:66:   required from here
/usr/include/c++/5/ext/new_allocator.h:120:4: error: call of overloaded ‘ProductionQueueOrder(int&, long int&, long int&)’ is ambiguous
  { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); }
    ^
In file included from /home/FO/programs/fo_recov/UI/ProductionWnd.cpp:14:0:
/home/FO/programs/fo_recov/UI/../util/Order.h:538:5: note: candidate: ProductionQueueOrder::ProductionQueueOrder(int, int, float)
     ProductionQueueOrder(int empire, int index, float dummy1);
     ^
/home/FO/programs/fo_recov/UI/../util/Order.h:532:5: note: candidate: ProductionQueueOrder::ProductionQueueOrder(int, int, int)
     ProductionQueueOrder(int empire, int index, int new_index);
     ^
/home/FO/programs/fo_recov/UI/ProductionWnd.cpp:39:10: warning: ‘{anonymous}::temp_bool’ defined but not used [-Wunused-variable]
     bool temp_bool = RegisterOptions(&AddOptions);
          ^
CMakeFiles/freeorion.dir/build.make:1166: recipe for target 'CMakeFiles/freeorion.dir/UI/ProductionWnd.cpp.o' failed
make[2]: *** [CMakeFiles/freeorion.dir/UI/ProductionWnd.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
/home/FO/programs/fo_recov/UI/SitRepPanel.cpp:34:10: warning: ‘{anonymous}::temp_bool’ defined but not used [-Wunused-variable]
     bool temp_bool = RegisterOptions(&AddOptions);
          ^
/home/FO/programs/fo_recov/UI/ResearchWnd.cpp:34:10: warning: ‘{anonymous}::temp_bool’ defined but not used [-Wunused-variable]
     bool temp_bool = RegisterOptions(&AddOptions);
          ^
/home/FO/programs/fo_recov/UI/SidePanel.cpp:414:10: warning: ‘{anonymous}::temp_bool’ defined but not used [-Wunused-variable]
     bool temp_bool = RegisterOptions(&AddOptions);
          ^
CMakeFiles/Makefile2:257: recipe for target 'CMakeFiles/freeorion.dir/all' failed
make[1]: *** [CMakeFiles/freeorion.dir/all] Error 2
Makefile:149: recipe for target 'all' failed
make: *** [all] Error 2
I'll post an issue as well, but I thought it might get faster attention if I post here.
If I provided any code, scripts or other content here, it's released under GPL 2.0 and CC-BY-SA 3.0

User avatar
Geoff the Medio
Programming, Design, Admin
Posts: 12277
Joined: Wed Oct 08, 2003 1:33 am
Location: Munich

Re: current master won't compile for me

#2 Post by Geoff the Medio » Wed Jun 14, 2017 11:53 pm


User avatar
Dilvish
AI Lead, Programmer
Posts: 4719
Joined: Sat Sep 22, 2012 6:25 pm

Re: current master won't compile for me

#3 Post by Dilvish » Thu Jun 15, 2017 12:04 am

That did the trick, thanks. I've committed the fix.
If I provided any code, scripts or other content here, it's released under GPL 2.0 and CC-BY-SA 3.0

Post Reply