Comment 11 for bug 926464

Revision history for this message
Ignacio Nin (ignacio-nin) wrote :

Hello,

Confirming this for gcc 4.7, the problem seems to be in gcomm/src/gcomm/map.hpp

$ gcc -dumpversion
4.7

For Ubuntu 12.10:

$ g++ -o gcomm/src/evs_consensus.o -c -Wno-long-long -Wno-deprecated -ansi -pipe -Weffc++ -Wold-style-cast -fno-strict-aliasing -g -O3 -DNDEBUG -m64 -Wall -Wextra -Werror -Wno-unused-parameter -pedantic -D_XOPEN_SOURCE=600 -DHAVE_COMMON_H -DGALERA_USE_GU_NETWORK -DHAVE_BYTESWAP_H -DHAVE_ENDIAN_H -DHAVE_BOOST_SHARED_PTR_HPP -DHAVE_TR1_UNORDERED_MAP -DBOOST_DATE_TIME_POSIX_TIME_STD_CONFIG=1 -DGALERA_USE_BOOST_POOL_ALLOC=1 -DHAVE_ASIO_HPP -DHAVE_ASIO_SSL_HPP -Icommon -Iasio -Igalerautils/src -Igcomm/src -Igcomm/src/gcomm -Igcache/src -Igcs/src -Iwsdb/src -Igalera/src gcomm/src/evs_consensus.cpp
In file included from gcomm/src/gcomm/view.hpp:16:0,
                 from gcomm/src/evs_message2.hpp:12,
                 from gcomm/src/evs_consensus.cpp:6:
gcomm/src/gcomm/map.hpp: In instantiation of ‘gcomm::Map<K, V, C>::iterator gcomm::Map<K, V, C>::insert_unique(const typename gcomm::MapBase<K, V, C>::value_type&) [with K = gcomm::UUID; V = gcomm::evs::MessageNode; C = std::map<gcomm::UUID, gcomm::evs::MessageNode, std::less<gcomm::UUID>, std::allocator<std::pair<const gcomm::UUID, gcomm::evs::MessageNode> > >; gcomm::Map<K, V, C>::iterator = std::_Rb_tree_iterator<std::pair<const gcomm::UUID, gcomm::evs::MessageNode> >; typename gcomm::MapBase<K, V, C>::value_type = std::pair<const gcomm::UUID, gcomm::evs::MessageNode>]’:
gcomm/src/evs_message2.hpp:653:33: required from here
gcomm/src/gcomm/map.hpp:226:17: error: no matching function for call to ‘get_value(const value_type&)’
gcomm/src/gcomm/map.hpp:226:17: note: candidate is:
gcomm/src/gcomm/map.hpp:277:14: note: template<class K, class V> const V& gcomm::get_value(const typename gcomm::Map<K, V>::value_type&)
gcomm/src/gcomm/map.hpp:277:14: note: template argument deduction/substitution failed:
gcomm/src/gcomm/map.hpp:226:17: note: couldn't deduce template parameter ‘K’
gcomm/src/gcomm/map.hpp:226:17: error: no matching function for call to ‘get_key(const value_type&)’
gcomm/src/gcomm/map.hpp:226:17: note: candidates are:
gcomm/src/gcomm/map.hpp:271:14: note: template<class K, class V> const K& gcomm::get_key(const typename gcomm::Map<K, V>::value_type&)
gcomm/src/gcomm/map.hpp:271:14: note: template argument deduction/substitution failed:
gcomm/src/gcomm/map.hpp:226:17: note: couldn't deduce template parameter ‘K’
gcomm/src/gcomm/map.hpp:265:14: note: template<class K, class V> const K& gcomm::get_key(typename gcomm::Map<K, V>::const_iterator)
gcomm/src/gcomm/map.hpp:265:14: note: template argument deduction/substitution failed:
gcomm/src/gcomm/map.hpp:226:17: note: couldn't deduce template parameter ‘K’