I tried to compile graphviz library but compiling graphviz_digraph_parser.cpp (and graphviz_graph_parser.cpp ) VC7.1 gave me an internal compiler error (compiler file 'msc1.cpp', line 2701).

The error occours in boost\gaph\properties.hpp at line 203:
  template <class Graph, class Property>
  struct property_map {
  private:
    typedef typename property_kind<Property>::type Kind;
    typedef typename detail::property_map_kind_selector<Kind>::type Selector;
==>    typedef typename Selector::template bind_<Graph, Property> Bind;
    typedef typename Bind::type Map;
  public:
    typedef typename Map::type type;
    typedef typename Map::const_type const_type;
  };


It happens when compiler tries to resolve the graph_traits instance (line 124 in graphviz_digraph_parser.cpp)
  namespace graphviz {

==>    typedef boost::graph_traits<GRAPHVIZ_GRAPH>::vertex_descriptor Vertex;
    typedef boost::graph_traits<GRAPHVIZ_GRAPH>::edge_descriptor   Edge;
    typedef GRAPHVIZ_GRAPH Subgraph;


Using GCC I compiled the library wihtout problem.
I was not able to find a workarount.
Can anyone help me?

Alessandro