- PR -

C4819が出現してコンパイルできない

投稿者投稿内容
D.Matsu
ベテラン
会議室デビュー日: 2006/12/07
投稿数: 51
投稿日時: 2007-10-31 15:41
「C2220はC4819を受けて発生しているのでC4819を解消するのが本筋であり、警告レベルを下げるのは筋違いである」という主張は正しいと思いますが、それでしたらあるかどうかが不明な設定を探すよりは、たとえ個人的に不快でも文字コード一括変換ツール等を利用して置き換えてしまった方が楽だと思いますよ。

それと、

引用:

C2220が生まれる理由はたぶん
文字コードがひとつも読めないので
それがせいでオブジェクトファイルが生まれてないのが
原因のような気がします。



を読むとやっぱりC2220を理解してないんじゃないかと……。
・文字コードの問題によりC4819(警告)が発生
・コンパイルオプション/WXにより、警告はコンパイルエラーになる(C2220でエラー)
という流れです。オブジェクトは関係なく、コンパイル時に警告が発生したことがC2220の発生要因です。
#「同じエラー」というか「警告をエラーに昇格した」ですね

C2220の"no 'object' file generated"の意味をそう取ったのだと思いますが、これは「(C4819の警告をコンパイルエラー扱いにしたので)オブジェクトは作成しないよ」の意味でしょう。
コンパイルエラーなんだからオブジェクトが出来てはいけませんよね?
スフレ
ぬし
会議室デビュー日: 2005/05/27
投稿数: 281
お住まい・勤務地: 東京
投稿日時: 2007-10-31 16:46
けっきょく、ソースコードはどういう文字コードで書かれているんでしょう?
純粋な ASCII のみなのか、シフト JIS なのか、英語版 Windows の CP1252 (ISO-8859-1の拡張)なのか。
butthead
大ベテラン
会議室デビュー日: 2004/01/14
投稿数: 162
投稿日時: 2007-10-31 17:04
エラーで報告される該当ページを
UTFに変えたところ、結局同じ結果でした。

https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=119369

これはマイクロソフトのバグのような気もするのですが、、、
Tdnr_Sym
ぬし
会議室デビュー日: 2005/09/13
投稿数: 464
お住まい・勤務地: 明石・神戸
投稿日時: 2007-10-31 17:29
こんにちは。

引用:

buttheadさんの書き込み (2007-10-31 17:04) より:
エラーで報告される該当ページを
UTFに変えたところ、結局同じ結果でした。

https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=119369

これはマイクロソフトのバグのような気もするのですが、、、



こっちによると
KB912790 FIX:C++ソース コードをコンパイルするために、 Visual Studio 2005 を使用する場合、エラー メッセージ:"警告 C4819 :現在のコード ページで表すことができない文字がファイルに含まれる"

マイクロソフトサポート契約センターに連絡して修正プログラムを入手してください、とのことですが…
butthead
大ベテラン
会議室デビュー日: 2004/01/14
投稿数: 162
投稿日時: 2007-11-01 07:54
これは昨日マイクロソフトに確認したのですが、
テストが十分でない修正ファイルのようでそれに同意しないと
手に入らないと。。。

なので、恐ろしいですね。

電話して無償サポート聞くしかなさそうですが、
正直マイクロソフトのやり方っていうのはわれわれユーザーからすると
不本意というしかないです。
よねKEN
ぬし
会議室デビュー日: 2003/08/23
投稿数: 472
投稿日時: 2007-11-01 09:37
引用:

buttheadさんの書き込み (2007-11-01 07:54) より:
これは昨日マイクロソフトに確認したのですが、
テストが十分でない修正ファイルのようでそれに同意しないと
手に入らないと。。。



マイクロソフトに確認されたのですね。
有用な情報ありがとうございます。
ということはまだHotfixの扱いってことですね。

引用:

電話して無償サポート聞くしかなさそうですが、



もう確認されたんですよね?となると後は修正ファイルを
もらうかどうかの判断だけだと思うのですが、何を聞かれるのでしょうか。

引用:

正直マイクロソフトのやり方っていうのはわれわれユーザーからすると
不本意というしかないです。



テストが十分じゃないけど、必要なら修正ファイルを提供するよってことだから、
まずまず良心的だと私は思うのですが、どの辺りが不本意なんでしょうか?

他社のパッケージソフトでも似たような対応がされていると思いますし、
万人向けのソフトでは、十分なテストが行われないうちは、
サービスパック(SP)のような形で利用者全員に向けては配布できないのはわかりますよね?
十分なテストを行うには時間がかかるから、必要な人に最低限のレベルでは提供する
というのは非常に現実的な運用ではないでしょうか。

ところでアメリカの開発者の間では問題は起きていないのでしょうか?
起きていないなら、Windows日本語版でVS英語版という組合せだから起きている
と考えられるので、アメリカの開発者同様にWindows英語版とVS英語版の組合せで
検証するのが筋であり、最も簡単な回避法だと思います。
butthead
大ベテラン
会議室デビュー日: 2004/01/14
投稿数: 162
投稿日時: 2007-11-02 14:42
はい、確認しました。
>FIXは配布できるが技術情報は教えられないとのことでした。
>他社のパッケージソフトでも似たような対応がされていると思いますし、
>万人向けのソフトでは、十分なテストが行われないうちは、
>サービスパック(SP)のような形で利用者全員に向けては配布できないのはわかりますよね?
>十分なテストを行うには時間がかかるから、必要な人に最低限のレベルでは提供する
>というのは非常に現実的な運用ではないでしょうか。

つまりFIXプログラムと同時に無償で情報を配信しなかったことに不満を感じます。
これを使うか使わないかはMSDNサブスクリプションの会員でないと教えてもらえないとのこと。そのために不便だと感じたのです。

最終的にアメリカからMSDNの会員ナンバー配布してもらってこれから聞きます。

>ところでアメリカの開発者の間では問題は起きていないのでしょうか?
>起きていないなら、Windows日本語版でVS英語版という組合せだから起きている
>と考えられるので、アメリカの開発者同様にWindows英語版とVS英語版の組合せで
>検証するのが筋であり、最も簡単な回避法だと思います。

その検証には膨大な時間がかかるのはご存知のとおりです。
OSをEnglishに変えて、すべてのコンフィグレーションを一からセットアップしなければなりませんから。

設定が一緒で彼らがOKというのなら、問題がわかっているのでこちらで検証する必要はないです。
どせい
大ベテラン
会議室デビュー日: 2006/10/25
投稿数: 145
投稿日時: 2007-11-02 16:23
引用:

buttheadさんの書き込み (2007-11-02 14:42) より:

設定が一緒で彼らがOKというのなら、問題がわかっているのでこちらで検証する必要はないです。



引用文だけでなく、他にも自分自身にしか意味が通じてないと容易に推測できるほどに指示語や省略が多いね。
この記事を真剣に読んでいる皆様の為にも、もう少し省略しているところを明示してもらえないだろうか?

説明をサボっても通じるほど、皆様とは阿吽の呼吸ではないだろう?

スキルアップ/キャリアアップ(JOB@IT)