﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
91	Dimステートメントにおいて、初期値式とAsが同時に指定されていたとき、As以降も初期値式の一部として捉える	dai	dai	"{{{
Dim a = 10 As Double
}}}
という定義があったとき、従来（β16）までは下記のような処理が行われていた。

 * 初期値の式は ""10""
 * 変数aの型指定は ""As Double""

今後は、これを下記のように解釈する。

 * 初期値の式は ""10 As Double""
 * 変数aの型指定は ""10 As Double"" の式の結果の型とする

どちらも同じように聞こえるかもしれないが、下記のようなケースで意味が曖昧になってしまう。

{{{
Dim a = 0.5 + 0.5 As Long
' 1. Dim a = (0.5 + 0.5) As Long   ※β16までの解釈
' 2. Dim a = 0.5 + (0.5 As Long)   ※β17からの解釈
}}}

このとき、1番目の解釈だと+演算子よりも優先順位が高いAs演算子が後に評価されるということになる。これは例外的な仕様、直感的ではない仕様というあまりよろしくないことなので、β17では2番目の解釈に変更する。

尚、下記のような初期値を一つの式として捉えることができないケースは従来どおり例外的に、As指定を特別視する。

{{{
Dim pos = [10,20] As POINTAPI
}}}"	タスク	closed	高-critical	AB5 CP4	Compiler		fixed		
