Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Segmentation fault on routing #138

Closed
moiarcsan opened this issue Feb 21, 2012 · 3 comments
Closed

Segmentation fault on routing #138

moiarcsan opened this issue Feb 21, 2012 · 3 comments
Milestone

Comments

@moiarcsan
Copy link

I am having troubles using osrm on my computer because the routing functionality throws a Segmentation Fault.

I am running an Ubuntu Natty:

$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=11.04
DISTRIB_CODENAME=natty
DISTRIB_DESCRIPTION="Ubuntu 11.04"
$ uname -a
Linux usuario-Satellite-A100 2.6.38-13-generic #55-Ubuntu SMP Tue Jan 24 14:27:59 UTC 2012 i686 i686 i386 GNU/Linux

And I think I have the right dependencies:

$ dpkg -l | grep libboos
ii libboost-date-time1.42-dev 1.42.0-4ubuntu2 set of date-time libraries based on generic programming concepts
ii libboost-date-time1.42.0 1.42.0-4ubuntu2 set of date-time libraries based on generic programming concepts
ii libboost-dev 1.42.0.1ubuntu1 Boost C++ Libraries development files (default version)
ii libboost-regex-dev 1.42.0.1ubuntu1 regular expression library for C++ (default version)
ii libboost-regex1.42-dev 1.42.0-4ubuntu2 regular expression library for C++
ii libboost-regex1.42.0 1.42.0-4ubuntu2 regular expression library for C++
ii libboost-serialization1.42-dev 1.42.0-4ubuntu2 serialization library for C++
ii libboost-serialization1.42.0 1.42.0-4ubuntu2 serialization library for C++
ii libboost-system-dev 1.42.0.1ubuntu1 Operating system (e.g. diagnostics support) library (default version)
ii libboost-system1.42-dev 1.42.0-4ubuntu2 Operating system (e.g. diagnostics support) library
ii libboost-system1.42.0 1.42.0-4ubuntu2 Operating system (e.g. diagnostics support) library
ii libboost-thread-dev 1.42.0.1ubuntu1 portable C++ multi-threading (default version)
ii libboost-thread1.42-dev 1.42.0-4ubuntu2 portable C++ multi-threading
ii libboost-thread1.42.0 1.42.0-4ubuntu2 portable C++ multi-threading
ii libboost1.42-dev 1.42.0-4ubuntu2 Boost C++ Libraries development files
$ dpkg -l | grep stxx
ii libstxxl-dev 1.3.0-1 Development libraries for STXXL
ii libstxxl1 1.3.0-1 C++ STL drop-in replacement for extremely large datasets
$ dpkg -l | grep libbz
ii libbz2-1.0 1.0.5-6ubuntu1.11.04.1 high-quality block-sorting file compressor library - runtime
ii libbz2-dev 1.0.5-6ubuntu1.11.04.1 high-quality block-sorting file compressor library - development
$ dpkg -l | grep libxml
ii libxml-commons-external-java 1.3.05-2 XML Commons external code - DOM, SAX, and JAXP, etc
ii libxml-parser-perl 2.36-1.1build3 Perl module for parsing XML files
ii libxml-twig-perl 1:3.34-1ubuntu1 Perl module for processing huge XML documents in tree mode
ii libxml-xpath-perl 1.13-7 Perl module for processing XPath
ii libxml2 2.7.8.dfsg-2ubuntu0.2 GNOME XML library
ii libxml2-dev 2.7.8.dfsg-2ubuntu0.2 Development files for the GNOME XML library
ii libxml2-utils 2.7.8.dfsg-2ubuntu0.2 XML utilities
ii libxmlgraphics-commons-java 1.3.1.dfsg-5 reusable components used by Batik and FOP
ii python-libxml2 2.7.8.dfsg-2ubuntu0.2 Python bindings for the GNOME XML library
$ dpkg -l | grep scons
ii scons 2.1.0-1 replacement for make

The log of OSRM doesn't show much information:
$ ./osrm-routed
[server] starting up engines, saved at Tue Feb 21 11:52:01 2012
[server] http 1.1 compression handled by zlib version 1.2.3.4
[info Plugins/ObjectForPluginStruct.h:42] loading graph data
[info Plugins/ObjectForPluginStruct.h:48] Data checksum is 8797027
[info Plugins/ObjectForPluginStruct.h:52] Loading nearest neighbor indices
[info Plugins/ObjectForPluginStruct.h:59] Loading names index
[info Plugins/ObjectForPluginStruct.h:76] All query data structures loaded
[handler] registering plugin hello
[handler] registering plugin locate
[handler] registering plugin nearest
[handler] registering plugin viaroute
[server] running and waiting for requests
[debug Server/RequestHandler.h:58] [debug] looking for handler for command: viaroute
Violación de segmento

The strange thing is that if I run it with gdb it works!

$ gdb ./osrm-routed
GNU gdb (Ubuntu/Linaro 7.2-1ubuntu11) 7.2
Copyright (C) 2010 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-linux-gnu".
Para las instrucciones de informe de errores, vea:
http://www.gnu.org/software/gdb/bugs/...
Leyendo símbolos desde /home/usuario/workspace/Project-OSRM/osrm-routed...(no se encontraron símbolos de depuración)hecho.
(gdb) run
Starting program: /home/usuario/workspace/Project-OSRM/osrm-routed
[Depuración de hilo usando libthread_db enabled]
[server] starting up engines, saved at Tue Feb 21 11:52:01 2012
[server] http 1.1 compression handled by zlib version 1.2.3.4
[info Plugins/ObjectForPluginStruct.h:42] loading graph data
[info Plugins/ObjectForPluginStruct.h:48] Data checksum is 8797027
[info Plugins/ObjectForPluginStruct.h:52] Loading nearest neighbor indices
[info Plugins/ObjectForPluginStruct.h:59] Loading names index
[info Plugins/ObjectForPluginStruct.h:76] All query data structures loaded
[handler] registering plugin hello
[handler] registering plugin locate
[handler] registering plugin nearest
[handler] registering plugin viaroute
[Nuevo Thread 0xb6c29b70 (LWP 8228)]
[server] running and waiting for requests
[Nuevo Thread 0xb6428b70 (LWP 8229)]
[debug Server/RequestHandler.h:58] [debug] looking for handler for command: viaroute
[debug Plugins/ViaRoutePlugin.h:146] Error occurred, single path not found

With valgrind, it also throws a Segmentation Fault:

$ valgrind ./osrm-routed --leak-check=full
==8242== Memcheck, a memory error detector
==8242== Copyright (C) 2002-2010, and GNU GPL'd, by Julian Seward et al.
==8242== Using Valgrind-3.6.1 and LibVEX; rerun with -h for copyright info
==8242== Command: ./osrm-routed --leak-check=full
==8242==
==8242== Syscall param rt_sigaction(act->sa_mask) points to uninitialised byte(s)
==8242== at 0x4088A77: __libc_sigaction (sigaction.c:96)
==8242== by 0x4088B52: sigaction (sigaction.c:44)
==8242== by 0x80511D0: installCrashHandler(std::string) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x80512AD: main (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== Address 0xbebd2e64 is on thread 1's stack
==8242==
[server] starting up engines, saved at Tue Feb 21 11:52:01 2012
[server] http 1.1 compression handled by zlib version 1.2.3.4
[info Plugins/ObjectForPluginStruct.h:42] loading graph data
[info Plugins/ObjectForPluginStruct.h:48] Data checksum is 8797027
[info Plugins/ObjectForPluginStruct.h:52] Loading nearest neighbor indices
[info Plugins/ObjectForPluginStruct.h:59] Loading names index
[info Plugins/ObjectForPluginStruct.h:76] All query data structures loaded
[handler] registering plugin hello
[handler] registering plugin locate
[handler] registering plugin nearest
[handler] registering plugin viaroute
[server] running and waiting for requests
[debug Server/RequestHandler.h:58] [debug] looking for handler for command: viaroute
==8242== Thread 3:
==8242== Invalid read of size 4
==8242== at 0x8072B49: StaticGraphContractionCleanup::Edge::EdgeData::BeginEdges(unsigned int const&) const (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x806B3D0: SearchEngine<ContractionCleanup::Edge::EdgeData, StaticGraphContractionCleanup::Edge::EdgeData >::_RoutingStep(boost::thread_specific_ptr<BinaryHeap<unsigned int, unsigned int, int, HeapData, UnorderedMapStorage<unsigned int, int> > >&, boost::thread_specific_ptr<BinaryHeap<unsigned int, unsigned int, int, HeapData, UnorderedMapStorage<unsigned int, int> > >&, bool const&, unsigned int, int, int) const (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x806416D: SearchEngine<ContractionCleanup::Edge::EdgeData, StaticGraphContractionCleanup::Edge::EdgeData >::ComputeRoute(PhantomNodes&, std::vector<_PathData, std::allocator<_PathData> >&) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x805DF01: ViaRoutePlugin::HandleRequest(RouteParameters const&, http::Reply&) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x80574ED: http::RequestHandler::handle_request(http::Request const&, http::Reply&) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x8058A38: http::Connection::handleRead(boost::system::error_code const&, unsigned int) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x809A74C: void boost::mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>::callboost::shared_ptr<http::Connection, boost::system::error_code const, unsigned int>(boost::shared_ptrhttp::Connection&, void const, boost::system::error_code const&, unsigned int&) const (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x809A5F3: void boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>::operator()boost::shared_ptr<http::Connection >(boost::shared_ptrhttp::Connection&, boost::system::error_code const&, unsigned int) const (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x809A7C1: void boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()>::operator()<boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>, boost::_bi::list2<boost::system::error_code&, unsigned int&> >(boost::_bi::type, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>&, boost::_bi::list2<boost::system::error_code&, unsigned int&>&, int) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x809A68B: void boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> >::operator()<boost::system::error_code, unsigned int>(boost::system::error_code&, unsigned int&) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x809A4B4: boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> >, boost::system::error_code, unsigned int>::operator()() (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x809A29E: void boost::asio::asio_handler_invoke<boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> >, boost::system::error_code, unsigned int> >(boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> >, boost::system::error_code, unsigned int>, ...) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== Address 0x5977488 is 16 bytes before a block of size 33 alloc'd
==8242== at 0x402641D: operator new(unsigned int) (vg_replace_malloc.c:255)
==8242== by 0x44D99F7: std::string::Rep::S_create(unsigned int, unsigned int, std::allocator const&) (in /usr/lib/i386-linux-gnu/libstdc++.so.6.0.14)
==8242== by 0x44DBC33: char
std::string::S_construct<char const*>(char const, char const
, std::allocator const&, std::forward_iterator_tag) (in /usr/lib/i386-linux-gnu/libstdc++.so.6.0.14)
==8242== by 0x44DC3C4: std::basic_string<char, std::char_traits, std::allocator >::basic_string(char const
, std::allocator const&) (in /usr/lib/i386-linux-gnu/libstdc++.so.6.0.14)
==8242== by 0x805AD05: ObjectsForQueryStruct::ObjectsForQueryStruct(std::string, std::string, std::string, std::string, std::string, std::string) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x8051498: main (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242==
==8242== Invalid read of size 4
==8242== at 0x8072B6E: StaticGraphContractionCleanup::Edge::EdgeData::EndEdges(unsigned int const&) const (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x806B4D6: SearchEngine<ContractionCleanup::Edge::EdgeData, StaticGraphContractionCleanup::Edge::EdgeData >::_RoutingStep(boost::thread_specific_ptr<BinaryHeap<unsigned int, unsigned int, int, HeapData, UnorderedMapStorage<unsigned int, int> > >&, boost::thread_specific_ptr<BinaryHeap<unsigned int, unsigned int, int, HeapData, UnorderedMapStorage<unsigned int, int> > >&, bool const&, unsigned int, int, int) const (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x806416D: SearchEngine<ContractionCleanup::Edge::EdgeData, StaticGraphContractionCleanup::Edge::EdgeData >::ComputeRoute(PhantomNodes&, std::vector<_PathData, std::allocator<_PathData> >&) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x805DF01: ViaRoutePlugin::HandleRequest(RouteParameters const&, http::Reply&) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x80574ED: http::RequestHandler::handle_request(http::Request const&, http::Reply&) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x8058A38: http::Connection::handleRead(boost::system::error_code const&, unsigned int) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x809A74C: void boost::mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>::callboost::shared_ptr<http::Connection, boost::system::error_code const, unsigned int>(boost::shared_ptrhttp::Connection&, void const, boost::system::error_code const&, unsigned int&) const (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x809A5F3: void boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>::operator()boost::shared_ptr<http::Connection >(boost::shared_ptrhttp::Connection&, boost::system::error_code const&, unsigned int) const (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x809A7C1: void boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()>::operator()<boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>, boost::_bi::list2<boost::system::error_code&, unsigned int&> >(boost::_bi::type, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>&, boost::_bi::list2<boost::system::error_code&, unsigned int&>&, int) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x809A68B: void boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> >::operator()<boost::system::error_code, unsigned int>(boost::system::error_code&, unsigned int&) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x809A4B4: boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> >, boost::system::error_code, unsigned int>::operator()() (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x809A29E: void boost::asio::asio_handler_invoke<boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> >, boost::system::error_code, unsigned int> >(boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> >, boost::system::error_code, unsigned int>, ...) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== Address 0x597748c is 12 bytes before a block of size 33 alloc'd
==8242== at 0x402641D: operator new(unsigned int) (vg_replace_malloc.c:255)
==8242== by 0x44D99F7: std::string::Rep::S_create(unsigned int, unsigned int, std::allocator const&) (in /usr/lib/i386-linux-gnu/libstdc++.so.6.0.14)
==8242== by 0x44DBC33: char* std::string::S_construct<char const*>(char const, char const
, std::allocator const&, std::forward_iterator_tag) (in /usr/lib/i386-linux-gnu/libstdc++.so.6.0.14)
==8242== by 0x44DC3C4: std::basic_string<char, std::char_traits, std::allocator >::basic_string(char const
, std::allocator const&) (in /usr/lib/i386-linux-gnu/libstdc++.so.6.0.14)
==8242== by 0x805AD05: ObjectsForQueryStruct::ObjectsForQueryStruct(std::string, std::string, std::string, std::string, std::string, std::string) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x8051498: main (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242==
==8242== Invalid read of size 1
==8242== at 0x806B40E: SearchEngine<ContractionCleanup::Edge::EdgeData, StaticGraphContractionCleanup::Edge::EdgeData >::_RoutingStep(boost::thread_specific_ptr<BinaryHeap<unsigned int, unsigned int, int, HeapData, UnorderedMapStorage<unsigned int, int> > >&, boost::thread_specific_ptr<BinaryHeap<unsigned int, unsigned int, int, HeapData, UnorderedMapStorage<unsigned int, int> > >&, bool const&, unsigned int, int, int) const (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x806416D: SearchEngine<ContractionCleanup::Edge::EdgeData, StaticGraphContractionCleanup::Edge::EdgeData >::ComputeRoute(PhantomNodes&, std::vector<_PathData, std::allocator<_PathData> >&) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x805DF01: ViaRoutePlugin::HandleRequest(RouteParameters const&, http::Reply&) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x80574ED: http::RequestHandler::handle_request(http::Request const&, http::Reply&) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x8058A38: http::Connection::handleRead(boost::system::error_code const&, unsigned int) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x809A74C: void boost::mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>::callboost::shared_ptr<http::Connection, boost::system::error_code const, unsigned int>(boost::shared_ptrhttp::Connection&, void const, boost::system::error_code const&, unsigned int&) const (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x809A5F3: void boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>::operator()boost::shared_ptr<http::Connection >(boost::shared_ptrhttp::Connection&, boost::system::error_code const&, unsigned int) const (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x809A7C1: void boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()>::operator()<boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>, boost::_bi::list2<boost::system::error_code&, unsigned int&> >(boost::_bi::type, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>&, boost::_bi::list2<boost::system::error_code&, unsigned int&>&, int) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x809A68B: void boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> >::operator()<boost::system::error_code, unsigned int>(boost::system::error_code&, unsigned int&) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x809A4B4: boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> >, boost::system::error_code, unsigned int>::operator()() (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x809A29E: void boost::asio::asio_handler_invoke<boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> >, boost::system::error_code, unsigned int> >(boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> >, boost::system::error_code, unsigned int>, ...) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x8099F80: void boost_asio_handler_invoke_helpers::invoke<boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> >, boost::system::error_code, unsigned int>, boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> > >(boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> >, boost::system::error_code, unsigned int> const&, boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> >&) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== Address 0xa6c8f3e is not stack'd, malloc'd or (recently) free'd
==8242==
==8242== Invalid read of size 4
==8242== at 0x8072BB1: StaticGraphContractionCleanup::Edge::EdgeData::GetTarget(unsigned int const&) const (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x806B438: SearchEngine<ContractionCleanup::Edge::EdgeData, StaticGraphContractionCleanup::Edge::EdgeData >::_RoutingStep(boost::thread_specific_ptr<BinaryHeap<unsigned int, unsigned int, int, HeapData, UnorderedMapStorage<unsigned int, int> > >&, boost::thread_specific_ptr<BinaryHeap<unsigned int, unsigned int, int, HeapData, UnorderedMapStorage<unsigned int, int> > >&, bool const&, unsigned int, int, int) const (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x806416D: SearchEngine<ContractionCleanup::Edge::EdgeData, StaticGraphContractionCleanup::Edge::EdgeData >::ComputeRoute(PhantomNodes&, std::vector<_PathData, std::allocator<_PathData> >&) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x805DF01: ViaRoutePlugin::HandleRequest(RouteParameters const&, http::Reply&) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x80574ED: http::RequestHandler::handle_request(http::Request const&, http::Reply&) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x8058A38: http::Connection::handleRead(boost::system::error_code const&, unsigned int) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x809A74C: void boost::mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>::callboost::shared_ptr<http::Connection, boost::system::error_code const, unsigned int>(boost::shared_ptrhttp::Connection&, void const, boost::system::error_code const&, unsigned int&) const (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x809A5F3: void boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>::operator()boost::shared_ptr<http::Connection >(boost::shared_ptrhttp::Connection&, boost::system::error_code const&, unsigned int) const (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x809A7C1: void boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()>::operator()<boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>, boost::_bi::list2<boost::system::error_code&, unsigned int&> >(boost::_bi::type, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>&, boost::_bi::list2<boost::system::error_code&, unsigned int&>&, int) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x809A68B: void boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> >::operator()<boost::system::error_code, unsigned int>(boost::system::error_code&, unsigned int&) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x809A4B4: boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> >, boost::system::error_code, unsigned int>::operator()() (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x809A29E: void boost::asio::asio_handler_invoke<boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> >, boost::system::error_code, unsigned int> >(boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> >, boost::system::error_code, unsigned int>, ...) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== Address 0xa6c8f40 is not stack'd, malloc'd or (recently) free'd
==8242==
==8242== Invalid read of size 4
==8242== at 0x806B43F: SearchEngine<ContractionCleanup::Edge::EdgeData, StaticGraphContractionCleanup::Edge::EdgeData >::_RoutingStep(boost::thread_specific_ptr<BinaryHeap<unsigned int, unsigned int, int, HeapData, UnorderedMapStorage<unsigned int, int> > >&, boost::thread_specific_ptr<BinaryHeap<unsigned int, unsigned int, int, HeapData, UnorderedMapStorage<unsigned int, int> > >&, bool const&, unsigned int, int, int) const (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x806416D: SearchEngine<ContractionCleanup::Edge::EdgeData, StaticGraphContractionCleanup::Edge::EdgeData >::ComputeRoute(PhantomNodes&, std::vector<_PathData, std::allocator<_PathData> >&) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x805DF01: ViaRoutePlugin::HandleRequest(RouteParameters const&, http::Reply&) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x80574ED: http::RequestHandler::handle_request(http::Request const&, http::Reply&) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x8058A38: http::Connection::handleRead(boost::system::error_code const&, unsigned int) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x809A74C: void boost::mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>::callboost::shared_ptr<http::Connection, boost::system::error_code const, unsigned int>(boost::shared_ptrhttp::Connection&, void const, boost::system::error_code const&, unsigned int&) const (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x809A5F3: void boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>::operator()boost::shared_ptr<http::Connection >(boost::shared_ptrhttp::Connection&, boost::system::error_code const&, unsigned int) const (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x809A7C1: void boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()>::operator()<boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>, boost::_bi::list2<boost::system::error_code&, unsigned int&> >(boost::_bi::type, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>&, boost::_bi::list2<boost::system::error_code&, unsigned int&>&, int) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x809A68B: void boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> >::operator()<boost::system::error_code, unsigned int>(boost::system::error_code&, unsigned int&) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x809A4B4: boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> >, boost::system::error_code, unsigned int>::operator()() (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x809A29E: void boost::asio::asio_handler_invoke<boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> >, boost::system::error_code, unsigned int> >(boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> >, boost::system::error_code, unsigned int>, ...) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== by 0x8099F80: void boost_asio_handler_invoke_helpers::invoke<boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> >, boost::system::error_code, unsigned int>, boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> > >(boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> >, boost::system::error_code, unsigned int> const&, boost::_bi::bind_t<void, boost::mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> >&) (in /home/usuario/workspace/Project-OSRM/osrm-routed)
==8242== Address 0xa6c8f4c is not stack'd, malloc'd or (recently) free'd
==8242==
osrm-routed: Plugins/../DataStructures/SearchEngine.h:448: void SearchEngine<EdgeData, GraphT>::RoutingStep(HeapPtr&, HeapPtr&, const bool&, NodeID, int
, int) const [with EdgeData = ContractionCleanup::Edge::EdgeData, GraphT = StaticGraphContractionCleanup::Edge::EdgeData, HeapPtr = boost::thread_specific_ptr<BinaryHeap<unsigned int, unsigned int, int, _HeapData, UnorderedMapStorage<unsigned int, int> > >, NodeID = unsigned int]: Assertion `edgeWeight > 0' failed.
==8242==
==8242== HEAP SUMMARY:
==8242== in use at exit: 77,370,074 bytes in 106,897 blocks
==8242== total heap usage: 126,001 allocs, 19,104 frees, 147,236,077 bytes allocated
==8242==
==8242== LEAK SUMMARY:
==8242== definitely lost: 0 bytes in 0 blocks
==8242== indirectly lost: 0 bytes in 0 blocks
==8242== possibly lost: 5,507,926 bytes in 106,711 blocks
==8242== still reachable: 71,862,148 bytes in 186 blocks
==8242== suppressed: 0 bytes in 0 blocks
==8242== Rerun with --leak-check=full to see details of leaked memory
==8242==
==8242== For counts of detected and suppressed errors, rerun with: -v
==8242== Use --track-origins=yes to see where uninitialised values come from
==8242== ERROR SUMMARY: 8 errors from 6 contexts (suppressed: 53 from 8)
Terminado (killed)

Is there anything else I can try to fix this?

@DennisOSRM
Copy link
Collaborator

Thanks for the report. I assume you are using the latest source code from the repository. What data set are you using and what's the actual query where it breaks?

@moiarcsan
Copy link
Author

I tried with another set of data and now it works. Sorry for the issue.

I think that the problem was that I generated the osrm files with another version of osrm, which was compiled with scons 2.0.1.

@DennisOSRM
Copy link
Collaborator

Yes, there may be incompatibilities between different versions.

SiarheiFedartsou added a commit that referenced this issue May 24, 2024
a2a485834 Update CHANGELOG
82f95612e Merge pull request #180 from mapbox/lightmare-move-out
c0e7ac6fd Merge pull request #181 from lightmare/revive-result-type
d13e61784 Revert "visitor - revive using explicit return type when provided"
0ebf09dea revive using visitor::result_type when available
b1076bbee visitor - revive using explicit return type when provided
2e3947578 properly forward through variant::visit
b09c7e121 travis: force compiling all tests
0ce49d837 add test case for issue #180 discovered by @artemp
8fc03c4d9 Remove clang 3.7 and gcc47 builds
f6e57e9c2 Merge branch 'move-out' of https://github.com/lightmare/variant into lightmare-move-out
94c8ccf54 fix expected compilation error messages
6d21f7704 perfect forwarding in apply_visitor
d960916fc implement match on rvalue
8b9eeb238 test matching unwrapped rvalue with lambda expression
77a24b9c0 Merge remote-tracking branch 'upstream/move-out' into move-out
4ce01e1c2 clang - self-assignment is a compile time error
c94634bbd Merge pull request #172 from mapbox/self-assignment
3dcac646f updated move assignment as suggested in mapbox/variant#172 (comment)
b36c78e12 Just use `assert(this!=&other)` in move assignment operator (https://stackoverflow.com/questions/9322174/move-assignment-operator-and-if-this-rhs)
767bc18f3 Improve self-assignment/move checks to have one return path.
94fc9377e Revert "disable -Wself-assign-overloaded (-Werror) in self-assignment test"
da2b171b7 Revert "don't fail old compilers"
7918a4847 don't fail old compilers
ad85832b8 disable -Wself-assign-overloaded (-Werror) in self-assignment test
4da455725 add self-assignment checks in copy and move assignment operator= (ref #164)
cb02ad487 update CHANGELOG for variant v1.1.6 release [skip ci]
a4f87dc69 fix version number
ff14f222a update CHANGELOG
0305fdb2a Merge pull request #171 from mapbox/jrex-mute-clang-analyzer
2fef61f08 Moved to in-class initialization
52df2765e update CHANGELOG in preparation for v1.1.6 release
63854e5c9 Add explicit initialization of data to mute clang static analyzer warnings in Xcode (10.2).
0f734f01e Merge pull request #167 from mapbox/clang++4
5a5ecca5b Run ASAN builda in isolated VM via `sudo : required`
c1a14e7d9 update mason + update clang++ to 4.0.1
fe0a0666f update mason
11a36a9f1 steady .. downgrade clang++ to 4.0.0
f31bcfb4b try fixing travis via upgrading clang++ from 3.9.1 -> 4.0.1
502e32b8b fix Makefile
a64062576 use `ls -lah` as `du -h --apparent-size` is not universally supported.
ef3856c85 report actual file size not allocated size.
256ddd555 Merge pull request #160 from mlogan/master
9c81bef8c Fix the noexcept specifications for move assignment and conversion.
5eee328d6 Merge pull request #165 from nick70/master
0888a8e92 Fix README.md issues
859a8c933 Merge pull request #163 from MaxRis/master
215d64585 Removes deprecated static_visitor to avoid msvc C4996 compiler warning
237f83cad Merge pull request #162 from mapbox/variant_alternative
835ebc193 add `variant_size` helper
30560e19e fix preprocessor logic
8b1de3147 add compile index in range check for __type_pack_element branch.
ae1931413 add optimized 'variant_alternative' implementation usinh built-in `__type_pack_element` when available (clang++)
3ffef950b add `variant_alternative_t`
3449d00cf alternative implementation of `variant_alternative`
4b98c485c add lost test check + remove stderr
43357808c add intial `variant_alternative` implementation (#161 http://en.cppreference.com/w/cpp/utility/variant/variant_alternative)
ba3085a5e use full sha1
75bb549d2 update CHANGELOG (git log <tag1>...<tag2> --pretty=format:'* %s [view commit](http://github.com/mapbox/variant/commit/%H)' --reverse)
6497bce68 add <sha1> to CHANGELOG entries.
555436f71 add CHANGELOG.md skeleton
b78b51548 Merge pull request #154 from ricardocosme/forwarding_reference_make_visitor
f0b50062b Add copy assignment and move assignment operators.
9f991da78 Use forwarding reference in make_visitor and visitor
266f68d9f Merge pull request #153 from ricardocosme/boost-build
04a6797a6 - Add auxiliar rule exe-test.
bd0a2d559 - Use of the module 'os' to get BOOST_DIR. - Add macro SINGLE_THREADED to single threading mode. - Define single threading mode as default. - Add lambda_overload_test and hashable_test.
561a09dd0 - Remove the use of boost libraries. - Add default build.
b2471ffc7 - Add a project mapbox_variant. - Use of the 'os' module to capture CXX_STD. - Common configs moved to project. - Built targets moved to 'out' directory.
624720759 add test for ref #147 + mapbox/variant#147
e01b7bf33 Merge branch 'BlueSolei-master'
195367cfc Merge branch 'master' of https://github.com/BlueSolei/variant into BlueSolei-master
ea106db54 recursive_wrapper test - avoid constructing new functor in recursive calls, call itself via `this` pointer.
7a541ba10 recursive_wrapper fail to compile when used with 2 classes which are base and derived #146
291121f6a Merge pull request #144 from narizhny/Casts
51fccd755 Add static_variant_cast, dynamic_variant_cast
550ac2f15 Merge pull request #143 from tomhughes/catch
a064940e2 REQUIRE_THROWS etc take an expression not a block
f9c265d7e Update bundled Catch to v1.9.0
5778eede1 Fixes example: rvalue variant matching
cdb9faf0f Simplifies result_of_* and let them handle rvalue refs
c5dac859a Failing Test Case: std::move-ing out of variant
916139a2e Merge pull request #141 from mapbox/match-otherwise
3d807d316 Merge pull request #138 from mapbox/sizeof
9ac8978f5 Adds a test for polymorphic lambdas in match, resolves #140
c839c666c add missing <limits>
35487cd39 Make `type_index_t` configurable at compile time via `MAPBOX_VARIANT_MINIMIZE_SIZE` and `MAPBOX_VARIANT_OPTIMIZE_FOR_SPEED`. Default is `unsigned int`. (ref #138)
3f6fd131e Add compile time check to disallow array types as alternatives.
fa8e124a2 Ensure internal index type is capable of holding all alternatives (ref #138)
05ee9aca1 use `mapbox::util::type_index_t` (#19)
9eec1fd48 make type used for `type_index` configurable via `type_index_t` typdef + use `unsigned int` by default. This addresses `sizeof` discrepancies between boost/std/mapbox variants (ref #19)
d2588a8f1 Trivial missing comma in README example code
05b7612aa Merge pull request #135 from mapbox/llvm-3.9.1
61f8acea1 upgrade mason
f5fb4661e upgrade to llvm 3.9.1
5baa948fa fix gyp build
4923eb527 osx: test that will support both latest (10.12) and oldest with c++11 support: 10.7
18a8055fe Merge pull request #134 from lightmare/warnings
5141d8d21 remove useless and/or dubious compiler flags
a9707c3de Merge pull request #133 from mapbox/Werror
a80beaafc disable -Wparentheses for older gcc
c8ec829ff drop -Wstack-protector which gives unhelpful warnings
7b409402c upgrade libstdc++ for coverage build
b43398619 Add -pthread
904dcaee6 limit some flags to clang++
1023f2d9a try without pthreads
886377de0 fortification flags + -pthreads for linux where needed
cf9a53499 build in both release and debug on travis
539d71274 fix conversion warnings
253047f53 enable -Werror, suppress warnings from non variant headers using isystem
18919174d Merge pull request #132 from lightmare/avoid-tuple-instantiation
4febf973c avoid expensive instantiation of tuple constructor in noexcept
6317a0b74 re-enable older compilers, trim excess
4fe5ced5d more sanitizer options
d1bb6e546 -fsanitize=cfi and -fsanitize=safe-stack
20d693ed9 fix LDFLAGS
9b2de4546 test with clang++ sanitizers and flto
702826365 disable clang++ 3.9, will work on getting working in a branch
e07a533a8 fix clang++ PATH
84eeb54c9 test clang++ via mason
a760cea8d upgrade mason
b9c58d631 upgrade boost to 1.62.0
c81b475b4 makefile improvements
ce2eea644 travis: fix addons
efa75df27 test with clang 3.9 and g++-6
cb5635ba2 add package.json for publishing to npm
02bd1ac4c Merge pull request #129 from daniel-j-h/docs
ed84def12 Merge pull request #128 from daniel-j-h/match
3c17c37ae Merge pull request #126 from daniel-j-h/hashable
d0266436b Adds Documentation for Readme, resolves #98
720c23736 Implements Pattern Matching for Sum Types via `.match` Member Function.
97d0379f0 Makes variant<Ts...> hashable iff Ts... are hashable, closes #125
9a115c5eb Merge branch 'daniel-j-h-lambda-visitor'
4d462f27b Adds C++14 SFINAE Test
2275a6197 Removes ::type Usage
d09188640 Provides Convenient Lambda Overload Visitor Interface, resolves #113.
a5a79a594 Fix #122 by adding an extra compile check in universal ctor (via @lightmare) + test case
9b46167f5 nicer stderr
84a426a31 Merge pull request #120 from mapbox/types
173a74579 add `struct adapted_variant_tag;`
e5818212a expose `using types = std::tuple<Types...>;` - useful for adapting variant to `boost::spirit` (QI,Karma,X3)
aaddee927 Update README
8e2f69641 Merge pull request #116 from lightmare/disjunction
2c7ddecdb use C++17 disjunction for no-references and one-convertible tests
388376ac9 Merge pull request #114 from mapbox/strict-conversions
075d9636f comment out code
8be6a2aa8 update tests
71ac8fdf9 Re-implement type matching logic to reject ambigious conversions
c511b2f34 add test for b3a002d185afac295486e2ebd6b84c78a2267ba0 (ref #112)
b3a002d18 fix value_traits to be able to match T, T& and T const& to the direct type stored in variant (ref #112)
b5728ad76 update .mason pkgs
eedafd31f use local HAS_EXCEPTIONS #define (__EXCEPTIONS is g++/clang specific macro)
372d7c88f c++ apply formatting
20e44accb Merge pull request #110 from mapbox/110-get_unchecked
37acc5a7c uncomment tests ref #82
adf0e02bc variant - yield return type of mapbox::util::get<T> automatically and make interface consistent (addresses #82)
bb8c2d203 Merge branch '111-which-constexpr'
dca3d967c Merge branch 'master' into 111-which-constexpr
74ce146d9 add static which<T>() function to get a contained types' which value
48d60445c remove unused internal metafunctions
434dab048 Add get_unchecked<T>() to enable use with exceptions disabled
2f8a4a381 Merge pull request #109 from mapbox/darwin-build-flags
33e27ec4c Update README.md
55579f03f Fix building with GCC (g++-5.2.0) on OS X (Darwin) (ref #108)
8bdad6b6d Update README.md
7f7470fee Jamroot - add missing include directory ./test/include for auto_cpu_timer.hpp
4368d7529 remove expected error string - current implementation emits compiler specific error message e.g
c6ae1ea0a `is<T>()` - add specialisation for recursive_wrapper<T> + update tests (ref #102)
04dc3a46b Install boost with mason; eliminate boost::timer dependency
9b2fc858c Remove Xcode 6 from CI matrix
1bc46e525 Merge pull request #101 from mapbox/include
390229a59 fix compilation
bfe0f19dd update remaining `<variant.hpp>` to `<mapbox/variant.hpp>`
343831611 ammend include dir
a606e9024 fix typo
9bd902536 Merge branch 'master' into include
7e4a01189 Add include directory
13c631a62 Update README.md
f00b24bf6 move headers into include/mapbox folder - closes #99
35ca16c74 issue warning `-Wweak-vtables` so this issue is not forgotten (mapbox/variant#95)
82bb901b6 run coverage with clang 3.5 - fix clang 3.8 build
5f6ed7149 remove invalid option for llvm-cov
f034d5571 fix clang 3.8 compile, try 3.9
b0ee4729b fix coverage to avoid warning: unit.gcno:version '402*', prefer '406*'
3f025adbf remove erroneous `;` ref #96

git-subtree-dir: third_party/variant
git-subtree-split: a2a4858345423a760eca300ec42acad1ad123aa3
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants