« [.NET] ASP.NET 動的データ サポート | トップページ | HEROES happen {here} ~ Virtual Launch Experience (VLE) »

2008年4月15日 (火)

[.NET] フィードバック - VB: Option Strict On でも、 For Each で暗黙的な縮小変換が実行される

新日々此何有哉が震源地。 f(^^;

[VisualStudio][.NET]VB.NET Express 2008

Dim firstnames As New HashSet(Of String)(New String() {"山田", "佐藤", "鈴木", "木村", "田中"})
For Each firstname As Integer In firstnames
    Console.WriteLine("{0}", firstname)
Next

あれ、これコンパイルエラー見つけてくれないの?

[.NET]re:Option Strict Onでもだめですか

biac wrote:
    Option Strict On を付けてやっても、 コンパイル通るよ (;;

うーん、言語仕様かどうか微妙だけど、Option Strict Onつけたら検出してほしいですよねぇ。feedbackしてみる?

ってことで、 フィードバックしてみました。

FeedbackID=338198
VB: Option Strict On でも、 For Each で暗黙的な縮小変換が実行される

これは、 MSDN の 「Visual Basic のプログラミング ガイド - 拡大変換と縮小変換」 に 「コンパイラは、 Option Strict ステートメントで型チェック スイッチが Off に設定されていない限り、 暗黙的な縮小変換の実行を許可しません」 とあるのを楯にとって、 String から Integer への暗黙的な縮小変換が起きている ( ように見える ) のはバグでしょう、 というものです。

これまた興味のある方、 評価 and/or 検証のほど、 宜しくお願い申しあげます。 m(_`_)m

# これは "by design" って言われそうな気がするなぁ。 まぁ、 VB で製品コードを書くことは、 まず無いし… f(^^;

|

« [.NET] ASP.NET 動的データ サポート | トップページ | HEROES happen {here} ~ Virtual Launch Experience (VLE) »

プログラミング」カテゴリの記事

コメント

ぢつは、 フィードバックに挙げたい不具合があって、 先週から折を見てはジタバタやってるんだけど、 再現コードが上手くできない… orz
まぁ、 そのついで ってことでw

投稿: biac | 2008年4月16日 (水) 08時40分

暗黙的な変換の範囲を仕様で確認しようかなーと思っていたら…仕事はやっ。

投稿: kkamegawa | 2008年4月16日 (水) 00時51分

この記事へのコメントは終了しました。

トラックバック


この記事へのトラックバック一覧です: [.NET] フィードバック - VB: Option Strict On でも、 For Each で暗黙的な縮小変換が実行される:

» [.NET]VB.NETのfor eachで暗黙的な型変換が検査されない話の結末 [新日々此何有哉]
biac の それさえもおそらくは幸せな日々@nifty: .NET フィードバック - VB: Option Strict On でも、 For Each で暗黙的な縮小変換が実行されるでbiacさんがfeedbackされたVB.NETで暗黙的な縮小変換が検査されない話。 connectでProgram Managerのコメントが付い... [続きを読む]

受信: 2008年4月19日 (土) 23時40分

» [.NET] Re: フィードバック - VB: Option Strict On でも、 For Each で暗黙的な縮小変換が実行される [biac の それさえもおそらくは幸せな日々@nifty]
Option Strict On でも、 For Each で暗黙的な縮小変換が実行される の件、 kkamegawa さんに先を越されましたが、 VB チームの Program Manager である Jonathan Aneja 氏から直々に 「仕様だよん」 という回答が。 ( まぁ、 予定通り f(^^; )ただ... [続きを読む]

受信: 2008年4月20日 (日) 13時27分

« [.NET] ASP.NET 動的データ サポート | トップページ | HEROES happen {here} ~ Virtual Launch Experience (VLE) »