# HG changeset patch # User deba # Date 1168552710 0 # Node ID 21587bc5922b6cedd27fcbe46130a67fa629ceb9 # Parent 4dd3eb3486416a77ba42efdd8d36284b66d29484 G++-3.3 conform solution diff -r 4dd3eb348641 -r 21587bc5922b lemon/list_graph.h --- a/lemon/list_graph.h Thu Jan 11 21:35:14 2007 +0000 +++ b/lemon/list_graph.h Thu Jan 11 21:58:30 2007 +0000 @@ -747,6 +747,10 @@ public: typedef ListUGraphBase Graph; + + class Node; + class Edge; + class UEdge; class Node { friend class ListUGraphBase; @@ -765,7 +769,6 @@ class UEdge { friend class ListUGraphBase; - friend class ListUGraphBase::Edge; protected: int id; @@ -787,7 +790,7 @@ explicit Edge(int pid) { id = pid;} public: - operator UEdge() const { return UEdge(id / 2); } + operator UEdge() const { return uEdgeFromId(id / 2); } Edge() {} Edge (Invalid) { id = -1; } diff -r 4dd3eb348641 -r 21587bc5922b lemon/smart_graph.h --- a/lemon/smart_graph.h Thu Jan 11 21:35:14 2007 +0000 +++ b/lemon/smart_graph.h Thu Jan 11 21:58:30 2007 +0000 @@ -409,7 +409,6 @@ class UEdge { friend class SmartUGraphBase; - friend class SmartUGraphBase::Edge; protected: int id; @@ -431,7 +430,7 @@ explicit Edge(int pid) { id = pid;} public: - operator UEdge() const { return UEdge(id / 2); } + operator UEdge() const { return uEdgeFromId(id / 2); } Edge() {} Edge (Invalid) { id = -1; }