monotone-devel
[Top][All Lists]
Advanced

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

Re: [Monotone-devel] build failure of 0.36 release on linux


From: Thomas Keller
Subject: Re: [Monotone-devel] build failure of 0.36 release on linux
Date: Thu, 03 Jan 2008 14:36:51 +0100
User-agent: Thunderbird 2.0.0.6 (X11/20070801)

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi Joe!

> I'm seeing a build failure of the 0.36 code.
> 
> I'm on a Gnu/Linux box, with an AMD64 architecture (dual core
> opteron) running Kubuntu (dapper):
> 
> [...]
> 
> g++ -DLOCALEDIR=\"/usr/local/monotone/monotone-0.36/share/locale\" 
> -DHAVE_CONFIG_H -I.  -I./lua     -g -O2 -Wall -W -Wno-unused 
> -fno-strict-aliasing -MT mtn-cmd_netsync.o -MD -MP -MF 
> .deps/mtn-cmd_netsync.Tpo -c -o mtn-cmd_netsync.o `test -f 'cmd_netsync.cc' 
> || echo './'`cmd_netsync.cc
> mv -f .deps/mtn-cmd_netsync.Tpo .deps/mtn-cmd_netsync.Po
> g++ -DLOCALEDIR=\"/usr/local/monotone/monotone-0.36/share/locale\" 
> -DHAVE_CONFIG_H -I.  -I./lua     -g -O2 -Wall -W -Wno-unused 
> -fno-strict-aliasing -MT mtn-cmd_list.o -MD -MP -MF .deps/mtn-cmd_list.Tpo -c 
> -o mtn-cmd_list.o `test -f 'cmd_list.cc' || echo './'`cmd_list.cc
> hybrid_map.hh: In constructor ‘hybrid_map<Key, 
> Val>::const_iterator::const_iterator(const hybrid_map<Key, Val>*, const 
> typename std::map<Key, Val, std::less<_Key>, std::allocator<std::pair<const 
> _Key, _Tp> > >::const_iterator&) [with Key = unsigned int, Val = 
> boost::shared_ptr<node>]’:
> hybrid_map.hh:190:   instantiated from ‘hybrid_map<Key, 
> Val>::const_iterator hybrid_map<Key, Val>::begin() const [with Key = unsigned 
> int, Val = boost::shared_ptr<node>]â
> cmd_list.cc:376:   instantiated from here
> hybrid_map.hh:119: error: no matching function for call to 
> ‘Internal::hashtable_iterator<std::pair<const unsigned int, 
> boost::shared_ptr<node> >, true, false>::hashtable_iterator()â
> /usr/lib/gcc/x86_64-linux-gnu/4.0.3/../../../../include/c++/4.0.3/tr1/hashtable:237:
>  note: candidates are: Internal::hashtable_iterator<Value, is_const, 
> cache>::hashtable_iterator(const Internal::hashtable_iterator<Value, false, 
> cache>&) [with Value = std::pair<const unsigned int, boost::shared_ptr<node> 
> >, bool is_const = true, bool cache = false]
> /usr/lib/gcc/x86_64-linux-gnu/4.0.3/../../../../include/c++/4.0.3/tr1/hashtable:235:
>  note:                 Internal::hashtable_iterator<Value, is_const, 
> cache>::hashtable_iterator(Internal::hash_node<Value, cache>**) [with Value = 
> std::pair<const unsigned int, boost::shared_ptr<node> >, bool is_const = 
> true, bool cache = false]
> /usr/lib/gcc/x86_64-linux-gnu/4.0.3/../../../../include/c++/4.0.3/tr1/hashtable:233:
>  note:                 Internal::hashtable_iterator<Value, is_const, 
> cache>::hashtable_iterator(Internal::hash_node<Value, cache>*, 
> Internal::hash_node<Value, cache>**) [with Value = std::pair<const unsigned 
> int, boost::shared_ptr<node> >, bool is_const = true, bool cache = false]
> /usr/lib/gcc/x86_64-linux-gnu/4.0.3/../../../../include/c++/4.0.3/tr1/hashtable:226:
>  note:                 Internal::hashtable_iterator<std::pair<const unsigned 
> int, boost::shared_ptr<node> >, true, false>::hashtable_iterator(const 
> Internal::hashtable_iterator<std::pair<const unsigned int, 
> boost::shared_ptr<node> >, true, false>&)

Sorry that this took a little longer, but I recently stumbled across the
same problem. The origin seems to be gcc, which did not provide default
constructors for Internal::hastable_iterator and
Internal::hashtable_const_iterator [0]. This was apparently fixed in gcc
4.1.1.

@Timothy: I looked at your code in hybrid_map.hh and hash_map.hh, but
I'm a little lost there. Is it somehow possible to add our own default
constructor for those mentioned iterators above or are we lost in this
case? We could (should?) at least check for this problem during
configure on the other hand...

Thomas.

[0] http://gcc.gnu.org/ml/libstdc++/2006-05/msg00017.html
- --
GPG-Key 0x160D1092 | address@hidden | http://thomaskeller.biz
Please note that according to the EU law on data retention, information
on every electronic information exchange might be retained for a period
of six months or longer: http://www.vorratsdatenspeicherung.de/?lang=en

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.4-svn0 (GNU/Linux)
Comment: Using GnuPG with SUSE - http://enigmail.mozdev.org

iD8DBQFHfOTRaf7NlBYNEJIRAqBCAJ9oEX3tOZ6LJL6DLV0McFeS/9fYDwCg5QtX
KKZfQmCfeAm5O8FLFUZl8HA=
=8X+m
-----END PGP SIGNATURE-----




reply via email to

[Prev in Thread] Current Thread [Next in Thread]