In the spirit of TODO item
Bruce Momjian <bruce@momjian.us>
In the spirit of TODO item
* Add use of 'const' for varibles in source tree
(which is misspelled, btw.)
I went through the front-end libpq code and did so. This affects in
particular the various accessor functions (such as PQdb() and
PQgetvalue()) as well as, by necessity, the internal helpers they use.
I have been really thorough in that regard, perhaps some people will find
it annoying that things like
char * foo = PQgetvalue(res, 0, 0)
will generate a warning. On the other hand it _should_ generate one. This
is no real compatibility break, although a few clients will have to be
fixed to suppress warnings. (Which again would be in the spirit of the
above TODO.)
In addition I replaced some int's by size_t's and removed some warnings
(and generated some new ones -- grmpf!). Also I rewrote PQoidStatus (so it
actually honors the const!) and supplied a new function PQoidValue that
returns a proper Oid type. This is only front-end stuff, none of the
communicaton stuff was touched.
The psql patch also adds some new consts to honor the new libpq situation,
as well as fixes a fatal condition that resulted when using the -V
(--version) option and there is no database listening.
So, to summarize, the psql you should definitely put in (with or without
the libpq). If you think I went too far with the const-mania in libpq, let
me know and I'll make adjustments. If you approve it, I will also update
the docs.
-Peter
--
Peter Eisentraut Sernanders vaeg 10:115
Files
| Path | Change | +/− |
|---|---|---|
| src/bin/psql/command.c | modified | +1 −1 |
| src/bin/psql/describe.c | modified | +7 −8 |
| src/bin/psql/print.c | modified | +43 −31 |
| src/bin/psql/print.h | modified | +3 −2 |
| src/bin/psql/startup.c | modified | +16 −24 |
| src/interfaces/libpq/fe-connect.c | modified | +21 −21 |
| src/interfaces/libpq/fe-exec.c | modified | +60 −59 |
| src/interfaces/libpq/fe-lobj.c | modified | +6 −6 |
| src/interfaces/libpq/fe-misc.c | modified | +9 −9 |
| src/interfaces/libpq/fe-print.c | modified | +36 −36 |
| src/interfaces/libpq/libpq-fe.h | modified | +59 −58 |
| src/interfaces/libpq/libpq-int.h | modified | +6 −6 |