diff --git a/src/backend/port/sysv_shmem.c b/src/backend/port/sysv_shmem.c
index e040400bb15b124c93be8fcce12e9bed264c61a4..98e049380a7981497b7feaf2d0550294b95dc4e4 100644
--- a/src/backend/port/sysv_shmem.c
+++ b/src/backend/port/sysv_shmem.c
@@ -65,7 +65,7 @@ typedef int IpcMemoryId;		/* shared memory ID returned by shmget(2) */
 unsigned long UsedShmemSegID = 0;
 void	   *UsedShmemSegAddr = NULL;
 static Size AnonymousShmemSize;
-static PGShmemHeader *AnonymousShmem;
+static void *AnonymousShmem;
 
 static void *InternalIpcMemoryCreate(IpcMemoryKey memKey, Size size);
 static void IpcMemoryDetach(int status, Datum shmaddr);
@@ -382,7 +382,7 @@ PGSharedMemoryCreate(Size size, bool makePrivate, int port)
 	PGShmemHeader *hdr;
 	IpcMemoryId shmid;
 	struct stat statbuf;
-	Size		allocsize = size;
+	Size		sysvsize = size;
 
 	/* Room for a header? */
 	Assert(size > MAXALIGN(sizeof(PGShmemHeader)));
@@ -440,7 +440,7 @@ PGSharedMemoryCreate(Size size, bool makePrivate, int port)
 		AnonymousShmemSize = size;
 
 		/* Now we need only allocate a minimal-sized SysV shmem block. */
-		allocsize = sizeof(PGShmemHeader);
+		sysvsize = sizeof(PGShmemHeader);
 	}
 #endif
 
@@ -453,7 +453,7 @@ PGSharedMemoryCreate(Size size, bool makePrivate, int port)
 	for (NextShmemSegID++;; NextShmemSegID++)
 	{
 		/* Try to create new segment */
-		memAddress = InternalIpcMemoryCreate(NextShmemSegID, allocsize);
+		memAddress = InternalIpcMemoryCreate(NextShmemSegID, sysvsize);
 		if (memAddress)
 			break;				/* successful create and attach */
 
@@ -492,7 +492,7 @@ PGSharedMemoryCreate(Size size, bool makePrivate, int port)
 		/*
 		 * Now try again to create the segment.
 		 */
-		memAddress = InternalIpcMemoryCreate(NextShmemSegID, allocsize);
+		memAddress = InternalIpcMemoryCreate(NextShmemSegID, sysvsize);
 		if (memAddress)
 			break;				/* successful create and attach */
 
@@ -540,8 +540,7 @@ PGSharedMemoryCreate(Size size, bool makePrivate, int port)
 	if (AnonymousShmem == NULL)
 		return hdr;
 	memcpy(AnonymousShmem, hdr, sizeof(PGShmemHeader));
-	return AnonymousShmem;
-
+	return (PGShmemHeader *) AnonymousShmem;
 }
 
 #ifdef EXEC_BACKEND