[#37248] [Feature:1.9] Enumerator#inspect — "Yusuke ENDOH" <mame@...>

遠藤です。

12 messages 2008/12/02

[#37337] [Feature #841] Object#self — "rubikitch ." <redmine@...>

Feature #841: Object#self

13 messages 2008/12/09

[#37513] Current status of 1.9.1 RC1's issues — "Yugui (Yuki Sonoda)" <yugui@...>

Hi, folks

14 messages 2008/12/20
[#37516] Re: Current status of 1.9.1 RC1's issues — Masatoshi SEKI <m_seki@...> 2008/12/20

咳といいます。

[#37576] [BUG:trunk] encoding for stdio's — "Yugui (Yuki Sonoda)" <yugui@...>

Yuguiです。

11 messages 2008/12/24

[ruby-dev:37578] can't build with GCC's -ansi option

From: Kouhei Sutou <kou@...>
Date: 2008-12-24 11:09:48 UTC
List: ruby-dev #37578
須藤です。

今日、Subversionの人たちにRubyバインディングがビルドできない
と言われて気付いたのですが、GCCの-ansiオプションをつけると拡
張ライブラリがビルドできません。

特に「-ansiオプションをつけてもビルドできるべき」とかいうので
はなく、-ansiオプションをつけてもビルドできるようにしたいの
かどうかが気になったのでこれを書いています。
(1.8.xはまだ引数宣言にK&Rも使っていたりして、ポータブルな書
き方を意識しているようにも見えるので)


手元の日本語のGCCのmanには以下のように書いていて、ruby.hの
「inline」がひっかかっていました。
(inlineは1.8.xにも1.9.xにもあります)

> -ansi  全ての ANSI 標準の C プログラムをサポートします。
>
>        このオプションは、GNU C が持つ ANSI C との非互換な機能を全て 排
>        除 します。例えば、asm, inline, typeof などのキーワードや、unix
>        や vax などの現在使用しているシステムを規定する定義済みマクロな
>        ど が抑制されます。さらに、好ましくなくかつほとんど使用されない
>        ANSI のトライグラフの機能を使用可能とし、さらに ‘$’ を識別子 の
>        一部として使用できないようにします。
>
>        代替キーワードである__asm__, __extension__, __inline__, __type‐
>        of__ は、 ‘-ansi’ が指定された場合でも使用することが可能です 。
>        も ちろん、これらを ANSI C プログラムで使用することが望ましくな
>        いのは当然ですが、‘-ansi’ をつけてコンパイルされる場合でも、 イ
>        ン クルードされるヘッダファイル中にこれらが記述できるということ
>        は有用です。 __unix__ や __vax__ などの代替定義済みマクロ は 、
>        ‘-ansi’  を指定する場合でも指定しない場合でも、利用可能となって
>        います。
>
>        ‘-ansi’ オプションは、ANSI 準拠でないプログラムを不必要に拒否す
>        る こ と は あ りません。もしこのような動作を行なわせたい場合に
>        は‘-ansi’に加えて‘-pedantic’オプションを指定する必要があります。
>
>        プ リプロセッサ定義済みマクロ __STRICT_ANSI__ が ‘-ansi’ オプシ
>        ョンを使用した際には定義されます。いくつかのヘッダファイルは 、
>        このマクロを識別して、ANSI 標準が望まない関数やマクロの定義を抑
>        制します。これは、それらの関数やマクロと同じ名前を別の目的で 使
>       用するプログラムを混乱させないようにするためです。

In This Thread

Prev Next