K.Maebashi's BBS 投稿フォーム
ハンドル名
件名
Link
>>ということでしょうかね。 >と思います。C++ と違い C の場合、K&R1 の頃の(いわゆる non-ansi C) との後方互換性を >保つため、規格書に書かれていない(もしくは規格書が禁じている)後方互換のための機能が >いくつも有効になっている処理系がほとんどのようです。 >VC++ や BCC なんかはその典型ですね。 ># 関数宣言のスコープ拡大なんかはその一例。 >gcc の場合、後方互換な機能が使われると警告を出すオプションがあったりしますが... > >あまり関係ありませんが、コンパイラの警告メッセージの翻訳チームは規格書を理解して >細心の注意を払って訳しているのか、かなり疑問。 >宣言と定義は用語の意味が違うのですが、どう見ても混同していると思われます。 > >>エラー E2356 proto2.c 10: 'piyo' の再宣言で型が一致していない(関数 hoge2 ) >>エラー E2344 proto2.c 3: 一つ前の 'piyo' の定義位置(関数 hoge2 ) >前者は正しく『宣言』ですが、後者は『定義』ではなく宣言であるはずです。 >>hoge.c(7) : warning C4013: 関数 'piyo' は定義されていません。int 型の値を返す外部関数と見なします。 >これもヘン。ここは『宣言』でなければならないはずです。 > >>hoge.c:7: warning: implicit declaration of function `piyo' >gcc の英語は正しく「宣言」と言っています。 > >gcc-3.3.4 の gcc/po/ja.po を見たところほぼ正しく翻訳しているようですが、 >一部やはり誤訳を発見。あぁ、フィードバックしないといけないかも? >
spamよけのため、ここに「ほげぴよ」と入力してください。
削除パスワード :
クリック!