Project

General

Profile

Actions

Bug #5159

closed

r32777のためSolaris上のgcc-4.4でCFLAGS="-std=gnu99"のときコンパイルエラー

Added by ngoto (Naohisa Goto) over 13 years ago. Updated over 13 years ago.

Status:
Closed
Target version:
ruby -v:
ruby 1.9.3dev (2011-08-04) [sparc64-solaris2.10]
Backport:
[ruby-dev:44355]

Description

Solaris上のgcc 4.4 にて、C99標準+gnu拡張を指定するコンパイル時オプション
-std=gnu99 を指定するとコンパイルエラーになります。

complex.c: In function ‘f_signbit’:
complex.c:1177: error: expected identifier or ‘(’ before ‘sizeof’
make: *** [complex.o] Error 1

gcc 4.x にて -std=gnu99 または -std=c99 を指定したときは、signbitはマクロで定義されるのですが、これがr32777のワークアラウンドで追加されたプロトタイプ宣言と衝突しています。

添付のパッチのように signbit がマクロならプロトタイプ宣言しないようにしたら、治りました。


Files

solaris-gcc-signbit.diff (1002 Bytes) solaris-gcc-signbit.diff ngoto (Naohisa Goto), 08/05/2011 03:43 PM
Actions

Also available in: Atom PDF

Like0
Like0