diff --git a/contrib/btree_gist/btree_bit.c b/contrib/btree_gist/btree_bit.c
index 459c4d60b0df6676a15a9cb348657e47fa040931..0cdd277a123d689a31273c991c5677bc0042c458 100644
--- a/contrib/btree_gist/btree_bit.c
+++ b/contrib/btree_gist/btree_bit.c
@@ -127,7 +127,7 @@ gbt_bit_consistent(PG_FUNCTION_ARGS)
 {
 	GISTENTRY  *entry = (GISTENTRY *) PG_GETARG_POINTER(0);
 	GBT_VARKEY *key = (GBT_VARKEY *) DatumGetPointer(entry->key);
-	void	   *qtst = (void *) DatumGetPointer(PG_GETARG_DATUM(1));
+	void	   *qtst = (void *) PG_GETARG_POINTER(1);
 	void	   *query = (void *) DatumGetByteaP(PG_GETARG_DATUM(1));
 	StrategyNumber strategy = (StrategyNumber) PG_GETARG_UINT16(2);
 	bool		retval = FALSE;
@@ -184,9 +184,9 @@ gbt_bit_same(PG_FUNCTION_ARGS)
 Datum
 gbt_bit_penalty(PG_FUNCTION_ARGS)
 {
-	float	   *result = (float *) PG_GETARG_POINTER(2);
 	GISTENTRY  *o = (GISTENTRY *) PG_GETARG_POINTER(0);
 	GISTENTRY  *n = (GISTENTRY *) PG_GETARG_POINTER(1);
+	float	   *result = (float *) PG_GETARG_POINTER(2);
 
 	PG_RETURN_POINTER(gbt_var_penalty(result, o, n, &tinfo));
 }
diff --git a/contrib/btree_gist/btree_bytea.c b/contrib/btree_gist/btree_bytea.c
index 2d2169412ee225ad287a5641f7b38c05a6f35fe0..79095fc0e9da1a2147a8f3f83d24463466b4ecf1 100644
--- a/contrib/btree_gist/btree_bytea.c
+++ b/contrib/btree_gist/btree_bytea.c
@@ -97,7 +97,7 @@ gbt_bytea_consistent(PG_FUNCTION_ARGS)
 {
 	GISTENTRY  *entry = (GISTENTRY *) PG_GETARG_POINTER(0);
 	GBT_VARKEY *key = (GBT_VARKEY *) DatumGetPointer(entry->key);
-	void	   *qtst = (void *) DatumGetPointer(PG_GETARG_DATUM(1));
+	void	   *qtst = (void *) PG_GETARG_POINTER(1);
 	void	   *query = (void *) DatumGetByteaP(PG_GETARG_DATUM(1));
 	StrategyNumber strategy = (StrategyNumber) PG_GETARG_UINT16(2);
 	bool		retval = FALSE;
@@ -146,9 +146,9 @@ gbt_bytea_same(PG_FUNCTION_ARGS)
 Datum
 gbt_bytea_penalty(PG_FUNCTION_ARGS)
 {
-	float	   *result = (float *) PG_GETARG_POINTER(2);
 	GISTENTRY  *o = (GISTENTRY *) PG_GETARG_POINTER(0);
 	GISTENTRY  *n = (GISTENTRY *) PG_GETARG_POINTER(1);
+	float	   *result = (float *) PG_GETARG_POINTER(2);
 
 	PG_RETURN_POINTER(gbt_var_penalty(result, o, n, &tinfo));
 }
diff --git a/contrib/btree_gist/btree_numeric.c b/contrib/btree_gist/btree_numeric.c
index 6818c5c0e304c2ab21eeb951fe3bdd2d751a064f..d9c3184fe6dfffaee335a0a34b1f5ad6f8960405 100644
--- a/contrib/btree_gist/btree_numeric.c
+++ b/contrib/btree_gist/btree_numeric.c
@@ -98,7 +98,7 @@ gbt_numeric_consistent(PG_FUNCTION_ARGS)
 
 	GISTENTRY  *entry = (GISTENTRY *) PG_GETARG_POINTER(0);
 	GBT_VARKEY *key = (GBT_VARKEY *) DatumGetPointer(entry->key);
-	void	   *qtst = (void *) DatumGetPointer(PG_GETARG_DATUM(1));
+	void	   *qtst = (void *) PG_GETARG_POINTER(1);
 	void	   *query = (void *) DatumGetNumeric(PG_GETARG_DATUM(1));
 	StrategyNumber strategy = (StrategyNumber) PG_GETARG_UINT16(2);
 	bool		retval = FALSE;
diff --git a/contrib/btree_gist/btree_text.c b/contrib/btree_gist/btree_text.c
index 8124362a882688ffbbd8cef401ac2ecad89024fd..50b81ab045436b27a1b5bbd5eb9a910909394eb5 100644
--- a/contrib/btree_gist/btree_text.c
+++ b/contrib/btree_gist/btree_text.c
@@ -124,7 +124,7 @@ gbt_text_consistent(PG_FUNCTION_ARGS)
 {
 	GISTENTRY  *entry = (GISTENTRY *) PG_GETARG_POINTER(0);
 	GBT_VARKEY *key = (GBT_VARKEY *) DatumGetPointer(entry->key);
-	void	   *qtst = (void *) DatumGetPointer(PG_GETARG_DATUM(1));
+	void	   *qtst = (void *) PG_GETARG_POINTER(1);
 	void	   *query = (void *) DatumGetTextP(PG_GETARG_DATUM(1));
 	StrategyNumber strategy = (StrategyNumber) PG_GETARG_UINT16(2);
 	bool		retval = FALSE;
@@ -144,7 +144,7 @@ gbt_bpchar_consistent(PG_FUNCTION_ARGS)
 {
 	GISTENTRY  *entry = (GISTENTRY *) PG_GETARG_POINTER(0);
 	GBT_VARKEY *key = (GBT_VARKEY *) DatumGetPointer(entry->key);
-	void	   *qtst = (void *) DatumGetPointer(PG_GETARG_DATUM(1));
+	void	   *qtst = (void *) PG_GETARG_POINTER(1);
 	void	   *query = (void *) DatumGetPointer(PG_DETOAST_DATUM(PG_GETARG_DATUM(1)));
 	void	   *trim = (void *) DatumGetPointer(DirectFunctionCall1(rtrim1, PointerGetDatum(query)));
 	StrategyNumber strategy = (StrategyNumber) PG_GETARG_UINT16(2);
@@ -197,9 +197,9 @@ gbt_text_same(PG_FUNCTION_ARGS)
 Datum
 gbt_text_penalty(PG_FUNCTION_ARGS)
 {
-	float	   *result = (float *) PG_GETARG_POINTER(2);
 	GISTENTRY  *o = (GISTENTRY *) PG_GETARG_POINTER(0);
 	GISTENTRY  *n = (GISTENTRY *) PG_GETARG_POINTER(1);
+	float	   *result = (float *) PG_GETARG_POINTER(2);
 
 	PG_RETURN_POINTER(gbt_var_penalty(result, o, n, &tinfo));
 }
diff --git a/contrib/btree_gist/btree_utils_num.c b/contrib/btree_gist/btree_utils_num.c
index f37c001b994007cb2b88e3b5a675f34f7cfb4cbf..ab4355e6fe8300fb5e5b1dd84f3faa6eeefc10ff 100644
--- a/contrib/btree_gist/btree_utils_num.c
+++ b/contrib/btree_gist/btree_utils_num.c
@@ -2,7 +2,7 @@
 #include "btree_utils_num.h"
 #include "utils/date.h"
 
-extern GISTENTRY *
+GISTENTRY *
 gbt_num_compress(GISTENTRY *retval, GISTENTRY *entry, const gbtree_ninfo * tinfo)
 {
 
@@ -61,7 +61,7 @@ gbt_num_compress(GISTENTRY *retval, GISTENTRY *entry, const gbtree_ninfo * tinfo
 ** The GiST union method for numerical values
 */
 
-extern void *
+void *
 gbt_num_union(GBT_NUMKEY * out, const GistEntryVector *entryvec, const gbtree_ninfo * tinfo)
 {
 	int			i,
@@ -99,7 +99,7 @@ gbt_num_union(GBT_NUMKEY * out, const GistEntryVector *entryvec, const gbtree_ni
 ** The GiST same method for numerical values
 */
 
-extern bool
+bool
 gbt_num_same(const GBT_NUMKEY * a, const GBT_NUMKEY * b, const gbtree_ninfo * tinfo)
 {
 
@@ -121,7 +121,7 @@ gbt_num_same(const GBT_NUMKEY * a, const GBT_NUMKEY * b, const gbtree_ninfo * ti
 }
 
 
-extern void
+void
 gbt_num_bin_union(Datum *u, GBT_NUMKEY * e, const gbtree_ninfo * tinfo)
 {
 
@@ -155,7 +155,7 @@ gbt_num_bin_union(Datum *u, GBT_NUMKEY * e, const gbtree_ninfo * tinfo)
 ** The GiST consistent method
 */
 
-extern bool
+bool
 gbt_num_consistent(
 				   const GBT_NUMKEY_R * key,
 				   const void *query,
diff --git a/contrib/btree_gist/btree_utils_var.c b/contrib/btree_gist/btree_utils_var.c
index d7686526a28ec74802255678c9ac10e612389064..7b1b40c7b5759d4ac84c7b7034090ddde6e76319 100644
--- a/contrib/btree_gist/btree_utils_var.c
+++ b/contrib/btree_gist/btree_utils_var.c
@@ -27,8 +27,7 @@ gbt_var_decompress(PG_FUNCTION_ARGS)
 }
 
 /* Returns a better readable representaion of variable key ( sets pointer ) */
-
-extern		GBT_VARKEY_R
+GBT_VARKEY_R
 gbt_var_key_readable(const GBT_VARKEY * k)
 {
 
@@ -43,7 +42,7 @@ gbt_var_key_readable(const GBT_VARKEY * k)
 }
 
 
-extern GBT_VARKEY *
+GBT_VARKEY *
 gbt_var_key_copy(const GBT_VARKEY_R * u, bool force_node)
 {
 
@@ -208,7 +207,7 @@ gbt_var_node_truncate(const GBT_VARKEY * node, int32 length, const gbtree_vinfo
 
 
 
-extern void
+void
 gbt_var_bin_union(Datum *u, GBT_VARKEY * e, const gbtree_vinfo * tinfo)
 {
 
@@ -265,7 +264,7 @@ gbt_var_bin_union(Datum *u, GBT_VARKEY * e, const gbtree_vinfo * tinfo)
 
 
 
-extern GISTENTRY *
+GISTENTRY *
 gbt_var_compress(GISTENTRY *entry, const gbtree_vinfo * tinfo)
 {
 
@@ -296,7 +295,7 @@ gbt_var_compress(GISTENTRY *entry, const gbtree_vinfo * tinfo)
 
 
 
-extern GBT_VARKEY *
+GBT_VARKEY *
 gbt_var_union(const GistEntryVector *entryvec, int32 *size, const gbtree_vinfo * tinfo)
 {
 
@@ -337,7 +336,7 @@ gbt_var_union(const GistEntryVector *entryvec, int32 *size, const gbtree_vinfo *
 }
 
 
-extern bool
+bool
 gbt_var_same(bool *result, const Datum d1, const Datum d2, const gbtree_vinfo * tinfo)
 {
 
@@ -362,7 +361,7 @@ gbt_var_same(bool *result, const Datum d1, const Datum d2, const gbtree_vinfo *
 
 
 
-extern float *
+float *
 gbt_var_penalty(float *res, const GISTENTRY *o, const GISTENTRY *n, const gbtree_vinfo * tinfo)
 {
 
@@ -458,7 +457,7 @@ gbt_vsrt_cmp(const void *a, const void *b)
 	return (*gbt_vsrt_cmp_tinfo->f_cmp) (ar.lower, br.lower);
 }
 
-extern GIST_SPLITVEC *
+GIST_SPLITVEC *
 gbt_var_picksplit(const GistEntryVector *entryvec, GIST_SPLITVEC *v, const gbtree_vinfo * tinfo)
 {
 	OffsetNumber i,
@@ -563,7 +562,7 @@ gbt_var_picksplit(const GistEntryVector *entryvec, GIST_SPLITVEC *v, const gbtre
 /*
  * The GiST consistent method
  */
-extern bool
+bool
 gbt_var_consistent(
 				   GBT_VARKEY_R * key,
 				   const void *query,
diff --git a/contrib/rtree_gist/README.rtree_gist b/contrib/rtree_gist/README.rtree_gist
index 27d498dff9bb7394324c3bcd785111a0d3a0afeb..475fae2c6e13a17fd399965c1d851d8c6bf751fb 100644
--- a/contrib/rtree_gist/README.rtree_gist
+++ b/contrib/rtree_gist/README.rtree_gist
@@ -56,7 +56,7 @@ BENCHMARKS:
 
   cd ./bench
   1. createdb TEST
-  2. psql TEST < ../box.sql
+  2. psql TEST < ../rtree_gist.sql
   3. ./create_test.pl | psql TEST 
      -- change $NUM - number of rows in test dataset
   4. ./bench.pl - perl script to benchmark queries.