Hi, Im trying to use a custom visitor but I get this error. My custom visitor is: class dijkstra_custom_visitor : public boost::default_dijkstra_visitor { public: dijkstra_threshold(glm::dvec3 source, double threshold): s(source), threshold(threshold) {} struct hit_threshold {}; void examine_vertex(boost::graph_traits <unGraph>::vertex_descriptor v, const unGraph& g) { glm::dvec3 dest = boost::get(&VertexProperties::m_mid_point, g, v); if( glm::distance(s,dest) > threshold ) throw hit_threshold(); } double threshold; glm::dvec3 s; }; My 'calling' line is: std::vector<Vertex> predecessors(boost::num_vertices(m_ugraph)); std::vector<Weight> distances(boost::num_vertices(m_ugraph), std::numeric_limits<double>::max() ); IndexMap indexMap = boost::get(boost::vertex_index, m_ugraph); PredecessorMap predecessorMap(&predecessors[0], indexMap); DistanceMap distanceMap(&distances[0], indexMap); glm::dvec3 s_mid = m_ugraph[*vertex_iterator_begin].m_mid_point; double thres = 500.0f; boost::dijkstra_shortest_paths(m_ugraph, *vertex_iterator_begin, boost::predecessor_map(predecessorMap).distance_map(distanceMap).visitor(boost::make_dijkstra_visitor(dijkstra_custom_visitor(s_mid,thres)))); What do you think is the problem? thanks