Bug Report - Compile errors in vacuum.c and shmem.c

Billy G. Allie <bill.allie@mug.org>

From: "Billy G. Allie" <Bill.Allie@mug.org>
To: pgsql-hackers@postgreSQL.org
Cc: patches@postgreSQL.org, pgsql-ports@postgreSQL.org
Date: 1999-03-31T08:06:41Z
Lists: pgsql-hackers

Attachments

============================================================================
                        POSTGRESQL BUG REPORT TEMPLATE
============================================================================


Your name		:	Billy G. Allie
Your email address	:	Bill.Allie@mug.org


System Configuration
---------------------
  Architecture (example: Intel Pentium)  	: Pentium

  Operating System (example: Linux 2.0.26 ELF) 	: UnixWare 7.0.1

  PostgreSQL version (example: PostgreSQL-6.4)  : Current CVS version

  Compiler used (example:  gcc 2.8.0)		: Optimizing C Compilation
						  System  (CCS) 3.2  08/18/98
						  (u701)


Please enter a FULL description of your problem:
------------------------------------------------
Compiling 'vacuum.c' produces the following errors:

    UX:acomp: ERROR: "vacuum.c", line 2424: cannot do pointer arithmetic on
    operand of unknown size
    UX:acomp: ERROR: "vacuum.c", line 2428: cannot do pointer arithmetic on
    operand of unknown size
    UX:acomp: ERROR: "vacuum.c", line 2431: cannot do pointer arithmetic on
    operand of unknown size
    UX:acomp: ERROR: "vacuum.c", line 2433: cannot do pointer arithmetic on
    operand of unknown size
    UX:acomp: ERROR: "vacuum.c", line 2448: cannot do pointer arithmetic on
    operand of unknown size

Compiling 'shmem.c' produces the following error:

    UX:acomp: ERROR: "shmem.c", line 740: void function cannot return value


Please describe a way to repeat the problem.   Please try to provide a
concise reproducible example, if at all possible: 
----------------------------------------------------------------------
Compile the program on a strict ANSI C compiler :-)


If you know how this problem might be fixed, list the solution below:
---------------------------------------------------------------------
The attached patch will fix the problems.

In vacuumc.c, pointer arithmatic was performed on a pointer of type void.  The 
patch casts the void pointer to a character pointer, does the arithmatic, and 
then casts the result back to a void pointer.

In shmem.c, a function of type void returned a value.  The patch removes the 
offending return statement.