[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[FDclone-users:00728] Re: FDclone 3.0 beta test has been started
- Subject: [FDclone-users:00728] Re: FDclone 3.0 beta test has been started
- From: Takashi SHIRAI <shirai@unixusers.net>
- Date: Mon, 07 Jan 2008 21:43:27 +0900
しらいです。
document 類も殆んど出来上がって後は release を待つばかりな
ので、他のみなさんもβテストへの協力をお願いしますね。
In Message-Id <OFA40AECE4.D131B794-ON492573C9.0005983E@lightwell.co.jp>
SHIOTA Shoichi <Shoichi.Shiota@lightwell.co.jp>さんwrites:
> 潮田と申します。
> make sh, make bsh は、無事最後まで通りますが、
> make nsh は、途中で止まります。
一概に非 ANSI 環境でのチェックが甘かったようです。
> body_fd(n) = *((int *)bodyp);
> の部分ですが、(int) を嫌うようで、
> ((openlist[n].dirp)) = *((int *)bodyp)
> にすれば通りました。
あ、cast は右辺には使えますが左辺には使えませんね。かと言
って cast 無しに違う型への代入は危険なので、非 ANSI では構造
体メンバを型毎に用意しましょう。何バイトか無駄になりますが。
> "auth.c", line 252.41: 1506-276 (S) 構文エラー: identifier が欠落している可能性があります。
> "auth.c", line 256.1: 1506-095 (S) パラメーター va_alist はここでは使用できません。
あ、vararg タイプの関数定義を間違えてますね。これも書き直
します。
> AIX では、まだ K & R タイプの関数宣言の方が、無難なんでしょうか。
> ANSI C(JIS C ?) タイプの関数宣言しか、記述したことが無いのですが。
__STDC__ が pre-define されていないので K&R 扱いされている
だけだと思いますが、そういう環境では ANSI のつもりで使ってる
と思わぬ落とし穴があるかも知れません。
最近の C だと大概定義されていますからね。未定義ってことは
それなりに古い実装だってことになると思います。
とゆー訳で FD-sh-071231.tar.gz に対する patch です。
---- Cut Here ----
diff -u old/auth.c ./auth.c
--- old/auth.c Sun Dec 30 22:39:01 2007
+++ ./auth.c Mon Jan 7 21:20:58 2008
@@ -249,7 +249,7 @@
static int NEAR genhash(char *buf, ALLOC_T size, CONST char *fmt, ...)
#else
/*VARARGS3*/
-static int NEAR genhash(buf, size, fmt, ...)
+static int NEAR genhash(buf, size, fmt, va_alist)
char *buf;
ALLOC_T size;
CONST char *fmt;
@@ -287,7 +287,7 @@
static int NEAR catprintf(char **sp, int len, CONST char *fmt, ...)
#else
/*VARARGS3*/
-static int NEAR catprintf(sp, len, fmt, ...)
+static int NEAR catprintf(sp, len, fmt, va_alist)
char **sp;
int len;
CONST char *fmt;
diff -u old/ftp.c ./ftp.c
--- old/ftp.c Mon Dec 31 06:38:48 2007
+++ ./ftp.c Mon Jan 7 21:21:16 2008
@@ -162,7 +162,7 @@
static VOID NEAR ftplog(CONST char *fmt, ...)
#else
/*VARARGS1*/
-static VOID NEAR ftplog(fmt, ...)
+static VOID NEAR ftplog(fmt, va_alist)
CONST char *fmt;
va_dcl
#endif
diff -u old/html.c ./html.c
--- old/html.c Mon Dec 31 03:47:39 2007
+++ ./html.c Mon Jan 7 21:21:36 2008
@@ -132,7 +132,7 @@
VOID htmllog(CONST char *fmt, ...)
#else
/*VARARGS1*/
-VOID htmllog(fmt, ...)
+VOID htmllog(fmt, va_alist)
CONST char *fmt;
va_dcl
#endif
diff -u old/http.c ./http.c
--- old/http.c Mon Dec 31 05:35:44 2007
+++ ./http.c Mon Jan 7 21:21:54 2008
@@ -153,7 +153,7 @@
static VOID NEAR httplog(CONST char *fmt, ...)
#else
/*VARARGS1*/
-static VOID NEAR httplog(fmt, ...)
+static VOID NEAR httplog(fmt, va_alist)
CONST char *fmt;
va_dcl
#endif
@@ -182,7 +182,7 @@
static int NEAR httpsend(XFILE *fp, CONST char *fmt, ...)
#else
/*VARARGS2*/
-static int NEAR httpsend(fp, fmt, ...)
+static int NEAR httpsend(fp, fmt, va_alist)
XFILE *fp;
CONST char *fmt;
va_dcl
diff -u old/sysemu.c ./sysemu.c
--- old/sysemu.c Mon Dec 31 04:21:12 2007
+++ ./sysemu.c Mon Jan 7 21:23:43 2008
@@ -107,6 +107,7 @@
} body;
#else
DIR *dirp;
+ int fd;
#endif
#if defined (DEP_KANJIPATH) || defined (DEP_ROCKRIDGE)
char *path;
@@ -120,7 +121,7 @@
#define body_fd(n) (openlist[n].body.fd)
#else
#define body_dirp(n) (openlist[n].dirp)
-#define body_fd(n) ((int)(openlist[n].dirp))
+#define body_fd(n) (openlist[n].fd)
#endif
#ifdef DEP_DOSDRIVE
diff -u old/urldisk.c ./urldisk.c
--- old/urldisk.c Mon Dec 31 03:52:02 2007
+++ ./urldisk.c Mon Jan 7 21:22:31 2008
@@ -61,8 +61,7 @@
static VOID NEAR urllog(CONST char *fmt, ...)
#else
/*VARARGS1*/
-static VOID NEAR urllog(fmt, ...)
-int uh;
+static VOID NEAR urllog(fmt, va_alist)
CONST char *fmt;
va_dcl
#endif
@@ -198,7 +197,7 @@
int urlcommand(int uh, char **sp, int cmd, ...)
#else
/*VARARGS3*/
-int urlcommand(uh, sp, cmd, ...)
+int urlcommand(uh, sp, cmd, va_alist)
int uh;
char **sp;
int cmd;
---- Cut Here ----
しらい たかし