Re: pgsql-server: Fix TAS assembly stuff for Solaris/386. - Mailing list pgsql-committers

From Kris Jurka
Subject Re: pgsql-server: Fix TAS assembly stuff for Solaris/386.
Date
Msg-id Pine.BSO.4.56.0409232128040.10147@leary.csoft.net
Whole thread Raw
In response to Re: pgsql-server: Fix TAS assembly stuff for Solaris/386.  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: pgsql-server: Fix TAS assembly stuff for Solaris/386.
List pgsql-committers

On Thu, 23 Sep 2004, Tom Lane wrote:

> Kris Jurka <books@ejurka.com> writes:
> > It passes regression tests,
>
> Regression tests on what exactly --- which platform, which compiler?
> (The gcc and non-gcc paths are different on Solaris, so if you can
> test both it'd be worth doing.  Also someone should verify that I
> didn't break Solaris/Sparc, same two cases again.)

Sorry:
$ uname -a
SunOS albert 5.9 Generic_112234-03 i86pc i386 i86pc

$ cc -V
cc: Sun WorkShop 6 update 2 C 5.3 Patch 111680-09 2003/05/18

$ gcc -v
Reading specs from /usr/local/lib/gcc-lib/i386-pc-solaris2.9/3.2.3/specs
Configured with: ../configure --disable-nls --with-as=/usr/ccs/bin/as
--with-ld=/usr/ccs/bin/ld
Thread model: posix
gcc version 3.2.3

I don't have access to sparc hardware at the moment.

> Ideally I'd like it warning-free on everything, but I'm not sure how
> practical that is.  The main thing that non-gcc compilers tend to warn
> about in my experience is "char *" vs "unsigned char *", of which there
> are a lot of occurrences in and around the multibyte code.  This does
> not really seem worth cleaning up at the moment.  If you see anything
> that looks interesting, or readily fixable, send it in.
>

char * vs unsigned char * are a good number of them, but I also see:

**********************************************************
"path.c", line 35: warning: storage class after type is obsolescent


**********************************************************
UINT64CONST produces these in a number of places:

"xlog.c", line 552: warning: constant promoted to unsigned long long

**********************************************************
----------------------------------------------------------
"dynloader.c", line 4: warning: empty translation unit


**********************************************************
"pg_shmem.c", line 415: warning: argument #1 is incompatible with
prototype:
        prototype: pointer to char : "/usr/include/sys/shm.h", line 241
        argument : pointer to struct PGShmemHeader {signed int magic, long
creatorPID, unsigned int totalsize, unsigned int freeoffset}


**********************************************************
I see this in both cc and gcc builds:

cc -Xa -O -v -g -I../../../src/interfaces/libpq -I../../../src/include
-I/usr/local/include -DFRONTEND  -c -o psqlscan.o psqlscan.c
"../../../src/include/pg_config.h", line 656: warning: macro redefined:
_FILE_OFFSET_BITS

gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes
-Wmissing-declarations -I../../../src/interfaces/libpq -I../../../src/include
-I/usr/local/include -DFRONTEND  -c -o psqlscan.o psqlscan.c -MMD
In file included from ../../../src/include/c.h:53,
                 from ../../../src/include/postgres_fe.h:21,
                 from psqlscan.l:38:
../../../src/include/pg_config.h:656:1: warning: "_FILE_OFFSET_BITS"
redefined
In file included from /usr/include/iso/stdio_iso.h:35,
                 from
/usr/local/lib/gcc-lib/i386-pc-solaris2.9/3.2.3/include/st
dio.h:36,
                 from psqlscan.c:12:
/usr/include/sys/feature_tests.h:96:1: warning: this is the location of
the previous definition


**********************************************************
"float.c", line 168: warning: division by 0


**********************************************************
Applications that have a "int main" prototype don't return values

"main.c", line 322: warning: Function has no return statement : main


**********************************************************
Then there are a whole lot of code reachability warnings in these classes
 - statement not reached
 - end-of-loop code not reached
 - loop not entered at top

I've attached these as a separate file because they are numerous.

Kris Jurka

Attachment

pgsql-committers by date:

Previous
From: "Marc G. Fournier"
Date:
Subject: Re: pginstaller - CVSROOT: Update address for CVS
Next
From: tgl@svr1.postgresql.org (Tom Lane)
Date:
Subject: pgsql-server: Okay, I'm tired of reading gripes from OS X users ...