[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[FDclone-users:00865] Re: FD-3.00g のコンパイルエラーについて
- Subject: [FDclone-users:00865] Re: FD-3.00g のコンパイルエラーについて
- From: Takashi SHIRAI <shirai@unixusers.net>
- Date: Mon, 07 Jun 2010 21:21:45 +0900
しらいです。
In Message-Id <20100607101129.f90d48d5.Shoichi.Shiota@lightwell.co.jp>
SHIOTA Shoichi <Shoichi.Shiota@lightwell.co.jp>さんwrites:
> 潮田と申します。
> AIX 5.3 上の FD を、 3.00f から 3.00g へ上げようとしたところ、
> コンパイル時にエラーが出るようになりました。
そんな馬鹿なと思ったら、確かに二つありますね。最近はもう殆
んどの環境が標準 C 環境なので、そうでない環境での検証が不十
分でした。申し訳ない。
多分 AIX 環境でも「make config」を行なうと vararg.h の代わ
りに stdarg.h を使うようになって、今回の bug は回避されるん
だと思います。
そうなっていないのは、cc が __STDC__ を pre-define してい
ないからで、もう全ての AIX で cc が標準 C 準拠なのであれば、
AIX 用設定に FORCEDSTDC を追加しても構いません。
でも AIX は古い実装が標準 C じゃなかった筈です。_AIX?? と
いう識別子が version 毎に pre-define されている筈なので、標
準 C になったタイミングで分別出来るといいんですが。
> $ gdiff -uN printf.c.orig printf.c
> --- printf.c.orig 2010-06-04 00:00:00 +0900
> +++ printf.c 2010-06-07 10:04:49 +0900
> @@ -794,7 +794,7 @@
> int Xprintf(CONST char *fmt, ...)
> #else
> /*VARARGS2*/
> -int Xfprintf(fmt, va_alist)
> +int Xprintf(fmt, va_alist)
> CONST char *fmt;
> va_dcl
> #endif
この patch はこれ以外に実装しようのない修正ですので、そっ
くりこのまま採用させて頂きます。他にも非標準 C 環境の方はこ
れを使って下さい。
しらい たかし