Hi Everyone,

I'm catching a compile error on older GCC from inc/ucommon/shared.h
that says "error: sockaddr "is not a template type". GCC version is
4.0.1, which is available on OS X 10.5 on a PowerMac G5.

The fix is to drop the 'struct' from the specialization:

--- inc/ucommon/shared.h
+++ inc/ucommon/shared.h
@@ -188,7 +188,7 @@
 }

 template<>
-inline size_t mapped_keypath<struct sockaddr>(const struct sockaddr *addr)
+inline size_t mapped_keypath<sockaddr>(const sockaddr *addr)
 {
     if(!addr)
         return 0;
@@ -197,7 +197,7 @@
 }

 template<>
-inline bool mapped_keyequal<struct sockaddr>(const struct sockaddr
*s1, const struct sockaddr *s2)
+inline bool mapped_keyequal<sockaddr>(const sockaddr *s1, const sockaddr *s2)
 {
     if(!s1 || !s2)
         return false;

'struct' is not needed for a C++ compiler anyways.

Jeff

Reply via email to