sakura
sakura copied to clipboard
VB6/VBAのアウトライン解析で特定のメソッドをユーザー定義型と誤認する
※SourceForgeのプロジェクトページに登録された次の不具合の転記になります。 patchunicode#1019 VBアウトラインでobj.TypeをTypeと誤判定する
問題内容
次のようなメソッド呼び出しが記述されたコードをアウトライン解析すると、当該行位置に「ユーザー定義型の宣言」が存在すると判定され、VBアウトラインリストにエントリが余計に作成されます。
obj.Type = aaa;
func(obj).Type = bbb;
再現手順
上記コードを含むソース(sf.netのパッチページに添付されたサンプル用VBファイルなど)をアウトライン解析する。
再現頻度
常に再現可能だと思います。
問題のカテゴリ
- プログラムの動作上の問題
- 正式リリース版
環境情報
- OS:Windows 10 Pro (21H1) 64bit
- サクラエディタ v2.4.2.3715 32bit dev
- もっと前のバージョンでも再現できると思います。
スクリーンショット
既知の不具合として残しておいて良さそうに思いました。 報告すらされていない不具合も多数あるので、対処するときに問題が分かるようにissueがあったほうが都合よい気がします。
TODO
- [ ] 原因の特定
- [ ] 対策手法の選定
- [ ] 対策適用、効果確認