Index: liboil/Makefile.am
===================================================================
RCS file: /cvs/liboil/liboil/liboil/Makefile.am,v
retrieving revision 1.41
diff -u -r1.41 Makefile.am
--- liboil/Makefile.am	3 Aug 2005 03:33:47 -0000	1.41
+++ liboil/Makefile.am	13 Aug 2005 21:56:06 -0000
@@ -102,11 +102,11 @@
 	echo >>liboilarray.c.tmp
 	echo '#include <liboil/liboilfunction.h>' >>liboilarray.c.tmp
 	echo >>liboilarray.c.tmp
-	grep '^_oil_function_class_' .libs/liboiltmp1.exp | \
+	grep '^oil_function_class_[^(ptr)]' .libs/liboiltmp1.exp | \
 	  sed 's/.*/extern OilFunctionClass &;/' >>liboilarray.c.tmp
 	echo >>liboilarray.c.tmp
 	echo 'OilFunctionClass *_oil_function_class_array[] = {' >>liboilarray.c.tmp
-	grep '^_oil_function_class_' .libs/liboiltmp1.exp | \
+	grep '^oil_function_class_[^(ptr)]' .libs/liboiltmp1.exp | \
 	  sed 's/.*/  \&&,/' >>liboilarray.c.tmp
 	echo '  NULL' >>liboilarray.c.tmp
 	echo '};' >>liboilarray.c.tmp
Index: liboil/build_prototypes.c
===================================================================
RCS file: /cvs/liboil/liboil/liboil/build_prototypes.c,v
retrieving revision 1.15
diff -u -r1.15 build_prototypes.c
--- liboil/build_prototypes.c	3 Aug 2005 00:00:27 -0000	1.15
+++ liboil/build_prototypes.c	13 Aug 2005 21:56:06 -0000
@@ -62,10 +62,10 @@
           string = strdup("void");
         }
 
-        printf ("extern OilFunctionClass *oil_function_class_ptr_%s;\n",
+        printf ("extern OilFunctionClass oil_function_class_%s;\n",
             klass->name);
         printf ("typedef void (*_oil_type_%s)(%s);\n",klass->name,string);
-        printf ("#define oil_%s ((_oil_type_%s)(*(void **)oil_function_class_ptr_%s))\n",
+        printf ("#define oil_%s ((_oil_type_%s)(*(void **)&oil_function_class_%s))\n",
             klass->name, klass->name, klass->name);
 
         oil_prototype_free (proto);
Index: liboil/liboilfunction.h
===================================================================
RCS file: /cvs/liboil/liboil/liboil/liboilfunction.h,v
retrieving revision 1.30
diff -u -r1.30 liboilfunction.h
--- liboil/liboilfunction.h	3 Aug 2005 00:00:27 -0000	1.30
+++ liboil/liboilfunction.h	13 Aug 2005 21:56:08 -0000
@@ -97,12 +97,12 @@
 #define OIL_IMPL_FLAG_ALTIVEC       (1<<16)
 
 #define OIL_DECLARE_CLASS(klass) \
-	extern OilFunctionClass _oil_function_class_ ## klass
+	extern OilFunctionClass oil_function_class_ ## klass
 
 
 #ifndef OIL_NO_CLASSES
 #define OIL_DEFINE_CLASS_FULL(klass, string, test) \
-OilFunctionClass _oil_function_class_ ## klass = { \
+OilFunctionClass oil_function_class_ ## klass = { \
 	NULL, \
 	#klass , \
 	NULL, \
@@ -113,7 +113,7 @@
         string \
 }; \
 OilFunctionClass *oil_function_class_ptr_ ## klass = \
-  &_oil_function_class_ ## klass
+  &oil_function_class_ ## klass
 #else
 #define OIL_DEFINE_CLASS_FULL(klass, string, test) \
   OIL_DECLARE_CLASS(klass)
@@ -125,7 +125,7 @@
 #define OIL_DEFINE_IMPL_FULL(function,klass,flags) \
 OilFunctionImpl OIL_OPT_MANGLE(_oil_function_impl_ ## function) = { \
 	NULL, \
-	&_oil_function_class_ ## klass , \
+	&oil_function_class_ ## klass , \
 	(void *)function, \
 	OIL_OPT_FLAG_MANGLE(flags), \
         #function OIL_OPT_SUFFIX \
