Re: Replacing lfirst() with lfirst_node() appropriately in planner.c
Ashutosh Bapat <ashutosh.bapat@enterprisedb.com>
From: Ashutosh Bapat <ashutosh.bapat@enterprisedb.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Jeevan Chalke <jeevan.chalke@enterprisedb.com>, Alvaro Herrera <alvherre@2ndquadrant.com>,
pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2017-09-06T05:19:21Z
Lists: pgsql-hackers
On Wed, Sep 6, 2017 at 1:32 AM, Tom Lane <tgl@sss.pgh.pa.us> wrote: > Ashutosh Bapat <ashutosh.bapat@enterprisedb.com> writes: >> On Tue, Sep 5, 2017 at 4:02 PM, Jeevan Chalke >> <jeevan.chalke@enterprisedb.com> wrote: >>> Attached patch for replacing linitial() with linital_node() appropriately in >>> planner.c > >> Ok. The patch looks good to me. It compiles and make check passes. >> Here are both the patches rebased on the latest sources. > > LGTM, pushed. I also changed a couple of places that left off any cast > of lfirst, eg: > > - List *gset = lfirst(lc); > + List *gset = (List *) lfirst(lc); > > While this isn't really harmful, it's not per prevailing style. +1. Thanks. > > BTW, I think we *could* use "lfirst_node(List, ...)" in cases where > we know the list is supposed to be a list of objects rather than ints > or Oids. I didn't do anything about that observation, though. > IMO, it won't be apparent as to why some code uses lfirst_node(List, ...) and some code uses (List *) lfirst(). -- Best Wishes, Ashutosh Bapat EnterpriseDB Corporation The Postgres Database Company
Commits
-
Use lfirst_node() and linitial_node() where appropriate in planner.c.
- 6e427aa4e5f3 11.0 landed