$NetBSD: patch-am,v 1.2 2005/03/06 11:40:21 spz Exp $

--- src/normalform/IPv6RadixSet.hh.orig	2004-07-30 12:58:12.000000000 +0200
+++ src/normalform/IPv6RadixSet.hh
@@ -74,7 +74,12 @@ extern ip_v6word_t ipv6bits[];
 
 class IPv6RadixTree {
 public:
+#if (__GNUC__ > 2)
+   friend class Iterator;
+   class Iterator {
+#else
    friend class Iterator {
+#endif
    private:
       const IPv6RadixTree* last;
       const IPv6RadixTree* root;
@@ -152,7 +157,12 @@ class IPv6RadixSet {
 public:
    static bool compressedPrint;
 
+#if (__GNUC__ > 2)
+   friend class Iterator;
+   class Iterator {
+#else
    friend class Iterator {
+#endif
    private:
       IPv6RadixTree::Iterator itr;
       const IPv6RadixTree *now;     // points to current node during iteration
@@ -163,7 +173,12 @@ public:
       bool next(ipv6_addr_t &_addr, u_int &_leng, ipv6_addr_t &rngs);
    };
 
+#if (__GNUC__ > 2)
+   friend class SortedIterator;
+   class SortedIterator {
+#else
    friend class SortedIterator {
+#endif
    private:
       class PrefixLNode : public ListNode {
       public:
@@ -187,7 +202,12 @@ public:
       bool next(ipv6_addr_t &_addr, u_int &_leng, ipv6_addr_t &_rngs);
    };
 
+#if (__GNUC__ > 2)
+   friend class PrefixIterator;
+   class PrefixIterator {
+#else
    friend class PrefixIterator {
+#endif
    private:
       IPv6RadixTree::Iterator itr;
       const IPv6RadixTree *current;
@@ -204,7 +224,12 @@ public:
       bool next(ipv6_addr_t &_addr, u_int &_leng);
    };
 
+#if (__GNUC__ > 2)
+   friend class SortedPrefixIterator;
+   class SortedPrefixIterator {
+#else
    friend class SortedPrefixIterator {
+#endif
    private:
       class PrefixLNode : public ListNode {
       public:
@@ -227,7 +252,12 @@ public:
       bool next(ipv6_addr_t &_addr, u_int &_leng);
    };
 
+#if (__GNUC__ > 2)
+   friend class PrefixRangeIterator;
+   class PrefixRangeIterator {
+#else
    friend class PrefixRangeIterator {
+#endif
    private:
       IPv6RadixTree::Iterator itr;
       const IPv6RadixTree *current;
@@ -260,7 +290,12 @@ public:
 */
    };
 
+#if (__GNUC__ > 2)
+   friend class SortedPrefixRangeIterator;
+   class SortedPrefixRangeIterator {
+#else
    friend class SortedPrefixRangeIterator {
+#endif
    private:
       class PrefixLNode : public ListNode {
       public:
