Re: Remove meaningless const qualifier from ginCompressPostingList()
Peter Eisentraut <peter@eisentraut.org>
From: Peter Eisentraut <peter@eisentraut.org>
To: Chao Li <li.evan.chao@gmail.com>,
Postgres hackers <pgsql-hackers@lists.postgresql.org>
Cc: Heikki Linnakangas <hlinnaka@iki.fi>
Date: 2025-10-30T10:35:08Z
Lists: pgsql-hackers
On 29.10.25 04:42, Chao Li wrote:
> While working on the other patch that fixed wrong "const" usage [1], I
> found the function:
> ```
> GinPostingList *
> ginCompressPostingList(const ItemPointer ipd, int nipd, int maxsize,
> int *nwritten)
> ```
> uses "const" unnecessarily. Because it needs to assign an element of
> "ipd" to the returned structure "GinPostingList->first" and "first" is a
> mutable "ItemPointerData *", so that "ipd" cannot be of const pointer.
I have committed a fix for this together with the other one.
The code you are referring to here is:
result->first = ipd[0];
This is a value copy, so this does not violate the immutability of ipd.
So the const in the function prototype was the right idea, but in the
wrong place of course.
Commits
-
Fix some confusing uses of const
- 8ce795fcb70d 19 (unreleased) landed