Files
pkgsrc-ng/editors/ex/patches/patch-ac
2013-09-26 17:14:40 +02:00

167 lines
3.0 KiB
Plaintext

$NetBSD: patch-ac,v 1.5 2012/12/28 03:03:08 dholland Exp $
- use standard headers
(these functions are supposed to substitute for the libc ones, so they
need to match stdlib.h exactly)
- use own headers
- declare void functions void
- fix return and argument types
--- mapmalloc.c.orig 2003-01-28 20:04:25.000000000 +0000
+++ mapmalloc.c
@@ -54,18 +54,12 @@
#include <fcntl.h>
#include <errno.h>
#include <limits.h>
-#ifdef __GLIBC__
-/*
- * Broken GNU libc will include stdlib.h with conflicting
- * malloc() types otherwise.
- */
-#ifndef __NO_STRING_INLINES
-#define __NO_STRING_INLINES
-#endif /* !__NO_STRING_INLINES */
-#endif /* __GLIBC__ */
+#include <stdlib.h>
#include <string.h>
#include "config.h"
+#include "ex.h"
+#include "ex_proto.h"
#ifdef LANGMSG
#include <nl_types.h>
@@ -176,8 +170,6 @@ static MM *mm_global = NULL;
static int zerofd = -1;
#endif
-extern int error __P((char *, ...));
-
/*
* Determine memory page size of OS
*/
@@ -308,7 +300,7 @@ mm_create(MM *mmPrev, size_t usize)
* and/or next chunk when possible to form larger chunks out of
* smaller ones.
*/
-static
+static void
mm_insert_chunk(MM *mm, mem_chunk *mcInsert)
{
mem_chunk *mc;
@@ -429,7 +421,7 @@ mm_retrieve_chunk(MM *mm, size_t size)
/*
* Allocate a chunk of memory
*/
-char *
+void *
malloc(size_t usize)
{
MM *mm;
@@ -469,10 +461,12 @@ nextpool:
/*
* Free a chunk of memory
*/
-free(char *ptr)
+void
+free(void *ptrV)
{
MM *mm;
mem_chunk *mc;
+ char *ptr = ptrV;
if (mm_global == NULL || ptr == NULL)
return;
@@ -494,12 +488,13 @@ free(char *ptr)
/*
* Reallocate a chunk of memory
*/
-char *
-realloc(char *ptr, size_t usize)
+void *
+realloc(void *ptrV, size_t usize)
{
size_t size;
mem_chunk *mc;
char *vp;
+ char *ptr = ptrV;
if (ptr == NULL)
return malloc(usize); /* POSIX.1 semantics */
@@ -523,7 +518,7 @@ realloc(char *ptr, size_t usize)
/*
* Allocate and initialize a chunk of memory
*/
-char *
+void *
calloc(size_t number, size_t usize)
{
char *vp;
@@ -534,38 +529,55 @@ calloc(size_t number, size_t usize)
return vp;
}
+#ifndef __NetBSD__ /* signature does not agree with netbsd's libcompat */
/*ARGSUSED*/
-cfree(p, num, size)
+void cfree(p, num, size)
char *p;
size_t num, size;
{
free(p);
}
+#endif
+
+
+/*
+ * Not all systems have the following in libc, so avoid compiler warnings
+ * by inserting extra global declarations.
+ */
+char *memalign(size_t alignment, size_t size);
+void *valloc(size_t size);
+char *mallinfo(void);
+int mallopt(void);
+char *poolsbrk(intptr_t val);
+
/*ARGSUSED*/
char *
memalign(alignment, size)
size_t alignment, size;
{
+ (void)alignment;
+ (void)size;
return NULL;
}
/*ARGSUSED*/
-char *
+void *
valloc(size)
size_t size;
{
+ (void)size;
return NULL;
}
char *
-mallinfo()
+mallinfo(void)
{
return NULL;
}
int
-mallopt()
+mallopt(void)
{
return -1;
}
@@ -574,5 +586,6 @@ mallopt()
char *
poolsbrk(intptr_t val)
{
+ (void)val;
return NULL;
}