Re: [COMMITTERS] pgsql: Preventive maintenance in advance of pgindent run.

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Piotr Stefaniak <postgres(at)piotr-stefaniak(dot)me>
Cc: Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>, Peter Eisentraut <peter(dot)eisentraut(at)2ndquadrant(dot)com>, "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: [COMMITTERS] pgsql: Preventive maintenance in advance of pgindent run.
Date: 2017-05-18 16:13:36
Message-ID: 24704.1495124016@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers pgsql-hackers

Piotr Stefaniak <postgres(at)piotr-stefaniak(dot)me> writes:
> That, I assume, would be me. Coincidentally, I'm about to push my fixes
> upstream (FreeBSD). Before that happens, my changes can be obtained from
> https://github.com/pstef/freebsd_indent and tested, if anyone wishes.

I spent a little bit of time on portability testing, because we are
certainly going to insist that this tool be portable to more than
just FreeBSD. Things are not very good as it stands:

* Makefile is 100% BSD-specific. Possibly we could just agree to
disagree on that point, and include a PG-style makefile that is not
like upstream's. I attach the one I used for test purposes.

* __FBSDID() macros fail to compile anywhere else than FreeBSD.
Couldn't you hide those inside #if 0, as you're already doing for
the ancient sccsid strings?

* Please put the copyright[] string in indent.c inside #if 0 too,
as that draws unreferenced-variable warnings on some compilers.

* There's one use of bcopy(), please replace with memmove().

* References to <sys/cdefs.h> and <err.h> are problematic, as both
are BSD-isms not found in POSIX. They seem to be available anyway
on Linux, but I bet not on Windows or SysV-tradition boxes.
I removed the <sys/cdefs.h> includes and didn't see any problems,
but removing <err.h> exposes calls to err() and errx(), which
we'd have to find replacements for. Maybe just change them to
standard-conforming printf() + exit()?

regards, tom lane

Attachment Content-Type Size
Makefile text/x-makefile 895 bytes

In response to

Responses

Browse pgsql-committers by date

  From Date Subject
Next Message Robert Haas 2017-05-18 18:05:59 pgsql: Don't explicitly mark range partitioning columns NOT NULL.
Previous Message Heikki Linnakangas 2017-05-18 07:35:12 pgsql: Fix typo in comment.

Browse pgsql-hackers by date

  From Date Subject
Next Message Andres Freund 2017-05-18 16:38:13 Re: WIP Patch: Precalculate stable functions, infrastructure v1
Previous Message Dilip Kumar 2017-05-18 16:09:03 Re: [POC] hash partitioning