Error: redefinition of typedef 'GeeHazardPointerNode'
I am seeing the following error when compiling with GCC 4.2:
/bin/sh ../libtool --tag=CC --mode=compile /opt/local/bin/gcc-apple-4.2 -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I../utils -I/opt/local/include -w -Os -pipe -isysroot/ -arch ppc -MT libgee_0_8_la-hazardpointer.lo -MD -MP -MF .deps/libgee_0_8_la-hazardpointer.Tpo -c -o libgee_0_8_la-hazardpointer.lo `test -f 'hazardpointer.c' || echo './'`hazardpointer.c
:info:build libtool: compile: /opt/local/bin/gcc-apple-4.2 -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I../utils -I/opt/local/include -w -Os -pipe -isysroot/ -arch ppc -MT libgee_0_8_la-hazardpointer.lo -MD -MP -MF .deps/libgee_0_8_la-hazardpointer.Tpo -c hazardpointer.c -fno-common -DPIC -o .libs/libgee_0_8_la-hazardpointer.o
hazardpointer.c:32: error: redefinition of typedef 'GeeHazardPointerNode'
gee.h:474: error: previous declaration of 'GeeHazardPointerNode' was here
hazardpointer.c:33: error: redefinition of typedef 'GeeHazardPointerFreeNode'
gee.h:492: error: previous declaration of 'GeeHazardPointerFreeNode' was here
gmake[2]: *** [Makefile:1069: libgee_0_8_la-hazardpointer.lo] Error 1
gmake[2]: Leaving directory '/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_devel_libgee/libgee/work/libgee-0.20.4/gee'
Is there a way to prevent the redefinition? I realize this situation is handled more gracefully in newer compilers but it would be great to have a fix here.