Fix compiler warnings master
authorTeodor Sigaev <teodor@sigaev.ru>
Mon, 8 Nov 2021 11:49:14 +0000 (14:49 +0300)
committerTeodor Sigaev <teodor@sigaev.ru>
Mon, 8 Nov 2021 11:49:14 +0000 (14:49 +0300)
75 files changed:
expected/bit.out
expected/bytea.out
expected/char.out
expected/cidr.out
expected/composite_int4.out
expected/composite_text.out
expected/date.out
expected/float4.out
expected/float8.out
expected/inet.out
expected/int2.out
expected/int4.out
expected/int4g.out
expected/int4i.out
expected/int8.out
expected/int8g.out
expected/int8i.out
expected/interval.out
expected/intervalg.out
expected/intervali.out
expected/macaddr.out
expected/money.out
expected/numeric.out
expected/oid.out
expected/smlar.out
expected/text.out
expected/textg.out
expected/texti.out
expected/time.out
expected/timestamp.out
expected/timestamptz.out
expected/timetz.out
expected/varbit.out
expected/varchar.out
smlar.c
smlar.h
smlar_gin.c
smlar_gist.c
sql/bit.sql
sql/bytea.sql
sql/char.sql
sql/cidr.sql
sql/composite_int4.sql
sql/composite_text.sql
sql/date.sql
sql/float4.sql
sql/float8.sql
sql/inet.sql
sql/int2.sql
sql/int4.sql
sql/int4g.sql
sql/int4i.sql
sql/int8.sql
sql/int8g.sql
sql/int8i.sql
sql/int8n.sql
sql/interval.sql
sql/intervalg.sql
sql/intervali.sql
sql/intervaln.sql
sql/macaddr.sql
sql/money.sql
sql/numeric.sql
sql/oid.sql
sql/smlar.sql
sql/text.sql
sql/textg.sql
sql/texti.sql
sql/textn.sql
sql/time.sql
sql/timestamp.sql
sql/timestamptz.sql
sql/timetz.sql
sql/varbit.sql
sql/varchar.sql

index 980cbaf..fff8c6e 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
  set_smlar_limit 
 -----------------
index 6e98885..2c3d4c9 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
  set_smlar_limit 
 -----------------
index b754250..af7e037 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
  set_smlar_limit 
 -----------------
index 38d1ad4..0313210 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
  set_smlar_limit 
 -----------------
index fc1d243..1a46c08 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
  set_smlar_limit 
 -----------------
index 0b77edc..4824934 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
  set_smlar_limit 
 -----------------
index 10b7fe3..8801337 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
  set_smlar_limit 
 -----------------
index 70eb507..f44cc0d 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
  set_smlar_limit 
 -----------------
index 4a9286f..bff792c 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
  set_smlar_limit 
 -----------------
index 7bde3d8..b7d47d0 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
  set_smlar_limit 
 -----------------
index 8c43891..ed54190 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
  set_smlar_limit 
 -----------------
index 1f69657..90f28ab 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
  set_smlar_limit 
 -----------------
index fd234b5..433fcd7 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.3);
  set_smlar_limit 
 -----------------
index 81e8284..92a8246 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(5.0);
  set_smlar_limit 
 -----------------
index ee943d2..7fdaebe 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
  set_smlar_limit 
 -----------------
index 432fa35..b38ba2c 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.3);
  set_smlar_limit 
 -----------------
index 9ffcc4d..201cf63 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(5.0);
  set_smlar_limit 
 -----------------
index a8bd2bd..1d33b6e 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
  set_smlar_limit 
 -----------------
index 6731e3c..7122a90 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.3);
  set_smlar_limit 
 -----------------
index 9d34998..fd1f5b8 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(5.0);
  set_smlar_limit 
 -----------------
index 9397042..14cac5f 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
  set_smlar_limit 
 -----------------
index c04d690..d3f4ae1 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
  set_smlar_limit 
 -----------------
index 84eb7ee..cf8882f 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
  set_smlar_limit 
 -----------------
index c76ce6f..ac67cf7 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
  set_smlar_limit 
 -----------------
index 2a34641..5dac034 100644 (file)
@@ -1,4 +1,5 @@
 CREATE EXTENSION smlar;
+set extra_float_digits =0;
 --sanity check
 SELECT 
        opc.opcname, 
index 622a89e..56cbd36 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
  set_smlar_limit 
 -----------------
index a48cb24..38fc578 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.3);
  set_smlar_limit 
 -----------------
index 751d140..b52ff23 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(5.0);
  set_smlar_limit 
 -----------------
index 2fe47ed..e724702 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
  set_smlar_limit 
 -----------------
index 72ab686..3ef57c2 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
  set_smlar_limit 
 -----------------
index a73c451..a5dc890 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
  set_smlar_limit 
 -----------------
index cd5191d..d0fa0e9 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
  set_smlar_limit 
 -----------------
index 06332ab..6f614d8 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
  set_smlar_limit 
 -----------------
index 9fab6c4..f74b110 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
  set_smlar_limit 
 -----------------
diff --git a/smlar.c b/smlar.c
index 5cbe5c2..ca0651f 100644 (file)
--- a/smlar.c
+++ b/smlar.c
@@ -16,7 +16,9 @@
 #include "utils/fmgroids.h"
 #include "utils/lsyscache.h"
 #include "utils/memutils.h"
+#if (PG_VERSION_NUM < 120000)
 #include "utils/tqual.h"
+#endif
 #include "utils/syscache.h"
 #include "utils/typcache.h"
 
@@ -28,6 +30,11 @@ PG_MODULE_MAGIC;
 #define SNAPSHOT SnapshotNow
 #endif
 
+#if PG_VERSION_NUM >= 130000
+#define heap_open(r, l)                        table_open((r), (l))
+#define heap_close(r, l)               table_close((r), (l))
+#endif
+
 static Oid
 getDefaultOpclass(Oid amoid, Oid typid)
 {
@@ -56,7 +63,11 @@ getDefaultOpclass(Oid amoid, Oid typid)
                {
                        if ( OidIsValid(opclassOid) )
                                elog(ERROR, "Ambiguous opclass for type %u (access method %u)", typid, amoid); 
+#if (PG_VERSION_NUM >= 120000)
+                       opclassOid = opclass->oid;
+#else
                        opclassOid = HeapTupleGetOid(tuple);
+#endif
                }
        }
 
@@ -91,9 +102,14 @@ getAMProc(Oid amoid, Oid typid)
                /*
                 * Search binary-coercible type
                 */
+#ifdef SearchSysCacheList1
+               catlist = SearchSysCacheList1(CASTSOURCETARGET,
+                                                                         ObjectIdGetDatum(typid));
+#else
                catlist = SearchSysCacheList(CASTSOURCETARGET, 1,
                                                                                ObjectIdGetDatum(typid),
                                                                                0, 0, 0);
+#endif
 
                for (i = 0; i < catlist->n_members; i++)
                {
@@ -171,6 +187,10 @@ getAMProc(Oid amoid, Oid typid)
 static ProcTypeInfo *cacheProcs = NULL;
 static int nCacheProcs = 0;
 
+#ifndef TupleDescAttr
+#define TupleDescAttr(tupdesc, i)      ((tupdesc)->attrs[(i)])
+#endif
+
 static ProcTypeInfo
 fillProcs(Oid typid)
 {
@@ -192,7 +212,7 @@ fillProcs(Oid typid)
 
                if (tupdesc->natts != 2)
                        elog(ERROR,"Composite type has wrong number of fields");
-               if (tupdesc->attrs[1]->atttypid != FLOAT4OID)
+               if (TupleDescAttr(tupdesc, 1)->atttypid != FLOAT4OID)
                        elog(ERROR,"Second field of composite type is not float4");
 
                oldcontext = MemoryContextSwitchTo(TopMemoryContext);
@@ -201,8 +221,10 @@ fillProcs(Oid typid)
 
                ReleaseTupleDesc(tupdesc);
 
-               info->cmpFuncOid = getAMProc(BTREE_AM_OID, info->tupDesc->attrs[0]->atttypid);
-               info->hashFuncOid = getAMProc(HASH_AM_OID, info->tupDesc->attrs[0]->atttypid);
+               info->cmpFuncOid = getAMProc(BTREE_AM_OID,
+                                                                        TupleDescAttr(info->tupDesc, 0)->atttypid);
+               info->hashFuncOid = getAMProc(HASH_AM_OID,
+                                                                         TupleDescAttr(info->tupDesc, 0)->atttypid);
        }
        else
        {
@@ -504,6 +526,7 @@ Array2SimpleArrayU(ProcTypeInfo info, ArrayType *a, void *cache)
                                                {
                                                        case TF_LOG:
                                                                s->df[i] = (1.0 + log( s->df[i] ));
+                                                               /* FALLTHROUGH */
                                                        case TF_N:
                                                                s->df[i] *= stat->idf;
                                                                break;
diff --git a/smlar.h b/smlar.h
index 6cd5a27..6410326 100644 (file)
--- a/smlar.h
+++ b/smlar.h
@@ -6,6 +6,8 @@
 #include "access/tupdesc.h"
 #include "catalog/pg_collation.h"
 
+#include <math.h>
+
 typedef        struct ProcTypeInfoData *ProcTypeInfo;
 
 typedef struct ProcTypeInfoData {
index ec095f6..4164fa4 100644 (file)
@@ -5,7 +5,11 @@
 #include "fmgr.h"
 #include "access/gin.h"
 #include "access/skey.h"
+#if PG_VERSION_NUM < 130000
 #include "access/tuptoaster.h"
+#else
+#include "access/heaptoast.h"
+#endif
 
 PG_FUNCTION_INFO_V1(smlararrayextract);
 Datum smlararrayextract(PG_FUNCTION_ARGS);
index 382b932..480d744 100644 (file)
@@ -3,7 +3,11 @@
 #include "fmgr.h"
 #include "access/gist.h"
 #include "access/skey.h"
+#if PG_VERSION_NUM < 130000
 #include "access/tuptoaster.h"
+#else
+#include "access/heaptoast.h"
+#endif
 #include "utils/memutils.h"
 
 typedef struct SmlSign {
@@ -164,7 +168,9 @@ Array2HashedArray(ProcTypeInfo info, ArrayType *a)
 
        ptr = GETARR(sign);
        for(i=0;i<s->nelems;i++)
-               ptr[i] = DatumGetUInt32( FunctionCall1( &s->info->hashFunc, s->elems[i] ) );
+               ptr[i] = DatumGetUInt32(FunctionCall1Coll(&s->info->hashFunc,
+                                                                                                 DEFAULT_COLLATION_OID,
+                                                                                                 s->elems[i]));
 
        /*
         * there is a collision of hash-function; len is always equal or less than
@@ -239,8 +245,13 @@ getHashedCache(void *cache)
                getFmgrInfoHash(stat->info);
                for(i=0;i<stat->nelems;i++)
                {
-                       uint32  hash = DatumGetUInt32( FunctionCall1( &stat->info->hashFunc, stat->elems[i].datum ) );
-                       int             index = HASHVAL(hash);
+                       uint32  hash;
+                       int             index;
+
+                       hash = DatumGetUInt32(FunctionCall1Coll(&stat->info->hashFunc,
+                                                                                                       DEFAULT_COLLATION_OID,
+                                                                                                       stat->elems[i].datum));
+                       index = HASHVAL(hash);
 
                        stat->helems[i].hash = hash;
                        stat->helems[i].idfMin = stat->helems[i].idfMax = stat->elems[i].idf;   
@@ -296,7 +307,9 @@ fillHashVal(void *cache, SimpleArray *a)
        getFmgrInfoHash(a->info);
 
        for(i=0;i<a->nelems;i++)
-               a->hash[i] = DatumGetUInt32( FunctionCall1( &a->info->hashFunc, a->elems[i] ) );
+               a->hash[i] = DatumGetUInt32(FunctionCall1Coll(&a->info->hashFunc,
+                                                                                                         DEFAULT_COLLATION_OID,
+                                                                                                         a->elems[i]));
 }
 
 
@@ -380,7 +393,7 @@ gsmlsign_compress(PG_FUNCTION_ARGS)
                retval = (GISTENTRY *) palloc(sizeof(GISTENTRY));
                gistentryinit(*retval, PointerGetDatum(sign),
                                                entry->rel, entry->page,
-                                               entry->offset, FALSE);
+                                               entry->offset, false);
        }
        else if ( ISSIGNKEY(DatumGetPointer(entry->key)) &&
                                !ISALLTRUE(DatumGetPointer(entry->key)) )
@@ -404,7 +417,7 @@ gsmlsign_compress(PG_FUNCTION_ARGS)
 
                        gistentryinit(*retval, PointerGetDatum(sign),
                                                        entry->rel, entry->page,
-                                                       entry->offset, FALSE);
+                                                       entry->offset, false);
                }
        }
 
@@ -425,7 +438,7 @@ gsmlsign_decompress(PG_FUNCTION_ARGS)
 
                gistentryinit(*retval, PointerGetDatum(key),
                                                entry->rel, entry->page,
-                                               entry->offset, FALSE);
+                                               entry->offset, false);
 
                PG_RETURN_POINTER(retval);
        }
index 028268a..1669561 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
 
 SELECT 
index e86d6cb..952aa74 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
 
 SELECT 
index 9a39f66..b557da9 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
 
 SELECT 
index afe69d4..d8ff861 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
 
 SELECT 
index 0ba908f..aab069b 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
 
 CREATE TYPE cint AS (id int, w float4);
index 6c0b85d..2f41ff8 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
 
 CREATE TYPE ctext AS (id text, w float4);
index 8643579..219122c 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
 
 SELECT 
index 53668e9..09343c4 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
 
 SELECT 
index 3841941..3753a42 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
 
 SELECT 
index 22febf6..7aaa2f1 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
 
 SELECT 
index c55464d..e3e913c 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
 
 SELECT 
index 2b16272..4a31600 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
 
 SELECT 
index 982ce4d..e7d4f09 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.3);
 
 SET smlar.type = "tfidf";
index 58e9b0d..7a9d58d 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(5.0);
 SET smlar.type='overlap';
 
index 9b3e2be..8ea868c 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
 
 SELECT 
index 4449e32..f7262ef 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.3);
 
 SET smlar.type = "tfidf";
index ad458e4..b74a464 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(5.0);
 SET smlar.type='overlap';
 
index 81144c9..957288e 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.8);
 
 DROP INDEX idx_test_int8;
index 7b45c95..8611a7c 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
 
 SELECT 
index 5bc25ca..f41394b 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.3);
 
 SET smlar.type = "tfidf";
index 2287d1a..335ab36 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(5.0);
 SET smlar.type='overlap';
 
index f36759d..2e03e0d 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.8);
 
 DROP INDEX idx_test_interval;
index 92492c8..9b36359 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
 
 SELECT 
index 43ea5ae..f280e0b 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
 
 SELECT 
index 5b54b2d..04626f0 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
 
 SELECT 
index 2436a32..3c3d5ae 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
 
 SELECT 
index da93dfe..c498675 100644 (file)
@@ -1,4 +1,5 @@
 CREATE EXTENSION smlar;
+set extra_float_digits =0;
 
 --sanity check
 SELECT 
index 98cac43..c160920 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
 
 SELECT 
index c937a5b..e8d2575 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.3);
 
 SET smlar.type = "tfidf";
index ea974b7..96833e6 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(5.0);
 SET smlar.type='overlap';
 
index dd6e65e..b3f1ae8 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.8);
 
 DROP INDEX idx_test_text;
index 81360e7..9218a59 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
 
 SELECT 
index f85a310..736e0b8 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
 
 SELECT 
index 8e9081f..e2a8687 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
 
 SELECT 
index c3e18f3..8d47bab 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
 
 SELECT 
index 23c3b5c..4389dfe 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
 
 SELECT 
index fe6c720..9faaf32 100644 (file)
@@ -1,3 +1,4 @@
+set extra_float_digits =0;
 SELECT set_smlar_limit(0.6);
 
 SELECT