postgres.git / summary / log / commit / refs
commit 9e58705a7f9728f10b2e0f0c9adc6e6ecff7486e
Author: Tom Lane <tgl@sss.pgh.pa.us>
Date: Fri May 31 14:40:00 2019 +0000
First released in: 12.0
Make our perfect hash functions be valid C++.
While C is happy to cast "const void *" to "const unsigned char *"
silently, C++ insists on an explicit cast. Since we put these
functions into header files, cpluspluscheck whines about that.
Add the cast to pacify it.
Discussion: https://postgr.es/m/b517ec3918d645eb950505eac8dd434e@gaz-is.ru
src/tools/PerfectHash.pm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/tools/PerfectHash.pm b/src/tools/PerfectHash.pm
index bd339e38a22..54f5d4e9940 100644
--- a/src/tools/PerfectHash.pm
+++ b/src/tools/PerfectHash.pm
@@ -131,7 +131,7 @@ sub generate_hash_function
}
$f .= sprintf "\n" if ($nhash % 8 != 0);
$f .= sprintf "\t};\n\n";
- $f .= sprintf "\tconst unsigned char *k = key;\n";
+ $f .= sprintf "\tconst unsigned char *k = (const unsigned char *) key;\n";
$f .= sprintf "\tsize_t\t\tkeylen = %d;\n", $options{fixed_key_length}
if (defined $options{fixed_key_length});
$f .= sprintf "\tuint32\t\ta = %d;\n", $hash_seed1;
[parent: d22f885f895a]