[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: error: conflicting types for 'malloc'



In message <yfmmzb7llj3.wl%makoto@ki.nu>
	on Tue, 18 Jul 2006 11:00:32 +0900,
	藤原 誠/ Makoto Fujiwara <makoto@ki.nu> wrote:
> 先ほどのメールで、どのような問題なのかを書き忘れました。
> 例えば次のようなものです。
> 
> cconv.c:759: error: conflicting types for 'malloc'
> cconv.c:760: error: conflicting types for 'realloc'
> /usr/include/stdlib.h:120: error: previous declaration of 'realloc' was here
> *** Error code 1
私のところではwarning止まりなのですが、mk.confあたりで何か設定されてま
すか?

% cc -v 
Using built-in specs.
Target: i386--netbsdelf
Configured with: /usr/src/tools/gcc/../../gnu/dist/gcc4/configure --enable-long-long --disable-multilib --enable-threads --disable-symvers --build=i386-unknown-netbsdelf3.99.17 --host=i386--netbsdelf --target=i386--netbsdelf
Thread model: posix
gcc version 4.1.2 20060628 prerelease (NetBSD nb2 20060711)

なお、修正としては<stdlib.h>あたりをインクルードしておけば万全でしょう。
(stdlib.hがない環境って、考慮する必要ってあるんでしょうか?)

--- lib/cconv.c.orig	1999-05-27 08:55:25.000000000 +0900
+++ lib/cconv.c
@@ -589,6 +589,7 @@ static char	*rcsid = "$Id: cconv.c,v 10.
 #endif
 
 #include	<stdio.h>
+#include	<stdlib.h>
 #include	<X11/Xlib.h>
 #include	<X11/keysym.h>
 #include	<X11/Xutil.h>
@@ -756,9 +757,6 @@ typedef struct {
 	FILE	*fp[MAXINC];
 } Files;
 
-extern char	*malloc();
-extern char	*realloc();
-
 #ifdef __STDC__
 static int wstrlen(wchar *);
 static wchar *wrev(wchar *);

--- lib/wnnlib.c.orig	1999-05-27 08:55:26.000000000 +0900
+++ lib/wnnlib.c
@@ -573,6 +573,7 @@ static char	*rcsid = "$Id: wnnlib.c,v 10
 #ifdef DEBUG_WNNLIB
 #include	<stdio.h>
 #endif
+#include	<stdlib.h>
 #include	"wnnlib.h"
 #include	<string.h>
 #include	<pwd.h>
@@ -620,9 +621,6 @@ static void printBuffer();
 
 #define MAXFZK	LENGTHBUNSETSU
 
-extern char	*malloc();
-extern char	*realloc();
-extern void	free();
 #ifdef SVR4
 #define bcopy(p, q, l)	memmove(q, p, l)
 #define bzero(p, l)	memset(p, 0, l)

-- 
神戸 隆博(かんべ たかひろ)		at 仕事場