Обсуждение: unnecessary #include "pg_getopt.h"?

Поиск
Список
Период
Сортировка

unnecessary #include "pg_getopt.h"?

От
torikoshia
Дата:
Hi,

While working on [1], I thought there seems to be unnecessary #include 
"pg_getopt.h".
getopt_long.h has already included pg_getopt.h, but some files include 
both getopt.h and getopt_long.h.


[1] 
https://www.postgresql.org/message-id/flat/d660ef741ce3d82f3b4283f1cafd576c@oss.nttdata.com
-- 
Regards,

--
Atsushi Torikoshi
NTT DATA CORPORATION
Вложения

Re: unnecessary #include "pg_getopt.h"?

От
Michael Paquier
Дата:
On Mon, May 22, 2023 at 06:48:37PM +0900, torikoshia wrote:
> While working on [1], I thought there seems to be unnecessary #include
> "pg_getopt.h".
> getopt_long.h has already included pg_getopt.h, but some files include both
> getopt.h and getopt_long.h.

Right, these could be removed.  I am not seeing other places in the
tree that include both.  That's always nice to clean up.
--
Michael

Вложения

Re: unnecessary #include "pg_getopt.h"?

От
Andres Freund
Дата:
Hi,

On 2023-05-24 09:59:18 +0900, Michael Paquier wrote:
> On Mon, May 22, 2023 at 06:48:37PM +0900, torikoshia wrote:
> > While working on [1], I thought there seems to be unnecessary #include
> > "pg_getopt.h".
> > getopt_long.h has already included pg_getopt.h, but some files include both
> > getopt.h and getopt_long.h.
> 
> Right, these could be removed.  I am not seeing other places in the
> tree that include both.  That's always nice to clean up.

This feels more like a matter of taste to me than anything. At least some of
the files touched in the patch use optarg, opterr etc. - which are declared in
pg_getopt.h. Making it reasonable to directly include pg_getopt.h.

I don't really see a need to change anything here?

Greetings,

Andres Freund



Re: unnecessary #include "pg_getopt.h"?

От
Michael Paquier
Дата:
On Tue, May 23, 2023 at 06:37:59PM -0700, Andres Freund wrote:
> This feels more like a matter of taste to me than anything.

Yup, it is.

> At least some of
> the files touched in the patch use optarg, opterr etc. - which are declared in
> pg_getopt.h. Making it reasonable to directly include pg_getopt.h.

getopt_long.h is included in 21 places of src/bin/, with all of them
touching optarg, while only four of them include pg_getopt.h.  So
removing them as suggested makes sense.  I agree with the tasting
matter as well, still there is also a consistency matter.
--
Michael

Вложения