$NetBSD$

lvalues are more complicated than rvalues.

--- src/freeglut_internal.h.orig	2003-12-11 18:02:13.000000000 +0100
+++ src/freeglut_internal.h	2007-10-11 00:20:38.000000000 +0200
@@ -384,7 +384,7 @@ struct tagSFG_WindowState
  * type.
  */
 #define FETCH_WCB(window,cbname) \
-    ((FGCB ## cbname)((window).CallBacks[CB_ ## cbname]))
+    (*((FGCB ## cbname *)&((window).CallBacks[CB_ ## cbname])))
 
 /*
  * INVOKE_WCB() is used as:
