﻿__group__	ticket	summary	component	version	type	owner	status	created	_changetime	_description	_reporter
AB5 CP6 Release	76	Usingステートメントでリソース管理を可能にする	Compiler		タスク	イグトランス (egtra)	assigned	2007-03-08T22:55:26+09:00	2008-10-19T01:39:14+09:00	"オブジェクトの開放がGCの仕事になったので、別途リソース管理のためのステートメントとしてUsingを導入する。

'''コード例：'''
{{{
Using file = File.Create( ""c:\test.txt"" )
   ' 処理
   ...
End Using
}}}
"	dai
AB5 CP6 Release	173	関数ポインタが正常に呼び出せない	Compiler		バグ	dai	assigned	2008-07-05T15:24:10+09:00	2008-07-05T15:59:53+09:00	"{{{
Function MyFunc1() As Long
    return 1
End Function

Dim lpFunc = AddressOf(MyFunc1)
Dim i As Long
Dim buf[100] As SByte

i=lpFunc()
wsprintf(buf,""%d"",i)
MessageBox(0,buf,""test"",MB_OK)
}}}

戻り値がおかしい。"	dai
AB5 CP6 Release	174	関数ポインタを呼び出そうとするとコンパイルエラー	Compiler		バグ	dai	assigned	2008-07-05T15:25:58+09:00	2008-07-05T16:15:16+09:00	"{{{
Sub MySub1(arg As String)
End Sub

Dim lpSub  = AddressOf(MySub1)
lpSub(""hello"")
}}}

{{{
Sub MySub1(arg As String)
End Sub

Sub MySub1(arg As Double)
End Sub

Dim lpSub  = AddressOf(MySub1)
lpSub(""hello"")
lpSub(1.4)
}}}

これらのコードをコンパイルすると、「文法が間違っています。」エラーになってしまう。"	dai
AB5 CP6 Release	89	GCをDLLコンパイルに対応させる	Compiler		タスク	dai	new	2007-03-13T20:04:27+09:00	2007-03-13T20:04:27+09:00	"β15現在のGCはDLL作成のことを考えていない。DLL内で生成されるオブジェクトはどこのGCが管理するのか、または呼び出し元モジュールがGCを搭載していないとき、DLL自らがGCの処理を発動させければならない。

この辺りの制御の方法を明確にし、実装に移る"	dai
AB5 CP6 Release	190	型パラメータを指定せずにジェネリッククラスをNewしても、エラーにならない。	Compiler		タスク	dai	new	2008-08-14T00:50:33+09:00	2008-08-14T00:50:33+09:00	"問題のコードを下記に示す。
{{{
' エラーにならない
Dim list1 = New System.Collections.Generic.List

' エラーになる
Dim list2 As System.Collections.Generic.List
}}}"	dai
AB5 CP6 Release	225	IDEのコード生成でWindows.UIを使用するようにする	IDE		タスク	イグトランス (egtra)	new	2008-10-23T00:35:21+09:00	2008-10-23T00:35:21+09:00	RADツールで作ったウィンドウに対して、ActiveBasic.Windows.UI以下を使ったコードを生成できるようにする。	イグトランス (egtra)
AB5 CP6 Release	195	テンプレート展開されたクラスをインターフェイスにキャストできない	Compiler		バグ	dai	new	2008-08-16T06:10:26+09:00	2008-08-16T06:11:07+09:00	"{{{
Function GetHoge () As System.Collections.Generic.IList<DWord>
    GetHoge = New System.Collections.Generic.List<DWord>
End Function
}}}
例えば、上記のコードがコンパイルエラーとなる。"	dai
AB5 CP6 Release	117	符号無整数型に対してMod演算子が正しく機能しない	Compiler		タスク	dai	new	2007-06-04T21:09:57+09:00	2007-06-04T21:09:57+09:00	"次のコードでは、2-3行目が正しい値、最終行が-2、残りは-1が出力されます。符号無整数型をModの演算対象にした場合、対応する符号付整数型で演算されているのではないでしょうか。DWord→Int64のようにより大きい符号付整数型へ型変換すると問題を回避できます。
{{{
#prompt

Dim dw = &hffffffff As DWord
Print dw Mod 10
Print dw As Long Mod 10
Print dw As QWord Mod 10
Print dw As Int64 Mod 10

Print dw As Word Mod 10
Print dw As Byte Mod 10

Dim qw = &hffffffffffffffff As QWord
Print qw Mod 10

dw = &hfffffffe
Print dw Mod 10 '-2

Sleep(-1)
}}}"	イグトランス (egtra)
AB5 CP6 Release	122	定数マクロを名前空間に対応させる	Compiler		タスク	dai	new	2007-07-11T02:49:47+09:00	2007-07-11T02:49:47+09:00		dai
AB5 CP6 Release	135	x64版のInterlockedIncrement関数の類を整備する	Compiler		タスク	dai	new	2007-09-08T16:04:45+09:00	2007-09-08T16:04:45+09:00	"{{{
Declare Function InterlockedIncrement Lib ""kernel32"" (ByRef lpAddend As Long) As Long
Declare Function InterlockedDecrement Lib ""kernel32"" (ByRef lpAddend As Long) As Long
Declare Function InterlockedExchange Lib ""kernel32"" (ByRef Target As Long, Value As Long) As Long
Declare Function InterlockedCompareExchange Lib ""kernel32"" (ByRef Destination As Long, Exchange As Long, Comperand As Long) As Long
Declare Function InterlockedExchangeAdd Lib ""kernel32"" (ByRef Addend As Long, Value As Long) As Long
Declare Function InterlockedCompareExchangePointer Lib ""kernel32"" Alias ""InterlockedCompareExchange"" (ByRef Destination As VoidPtr, Exchange As VoidPtr, Comperand As VoidPtr) As VoidPtr
Declare Function InterlockedExchangePointer Lib ""kernel32"" Alias ""InterlockedExchange"" (ByRef Target As VoidPtr, Value As VoidPtr) As VoidPtr
}}}

これらの関数がKernel32に含まれなくなっているので、別途ネイティブコードで生成可能にする。"	dai
AB5 CP6 Release	181	#requireをワイルドカード指定できるようにする。	ablib		タスク	dai	new	2008-07-19T12:52:05+09:00	2008-07-19T12:59:37+09:00	"例えば、今までこう書いていたところを、
{{{
#require ""./System/Xml/XmlAttribute.ab""
#require ""./System/Xml/XmlCharacterData.ab""
#require ""./System/Xml/XmlDeclaration.ab""
#require ""./System/Xml/XmlDocument.ab""
#require ""./System/Xml/XmlElement.ab""
#require ""./System/Xml/XmlLinkedNode.ab""
#require ""./System/Xml/XmlNode.ab""
#require ""./System/Xml/XmlText.ab""
}}}
こう書けるようにする。
{{{
#require ""./System/Xml/*.ab""
}}}"	dai
AB5 CP6 Release	194	継承時の型パラメータ指定のチェックを厳密に行うようにする	Compiler		タスク	dai	new	2008-08-15T23:54:31+09:00	2008-08-15T23:54:31+09:00	"{{{
Interface I<T>
End Interface

Interface J<T>
	Inherits I
End Interface

Class A<T>
End Class

Class B<T>
	Inherits A
End Class
}}}
上記のコードはエラーにすべし。"	dai
AB5 CP6 Release	208	Dnsクラスの実装	ablib		タスク	OverTaker	new	2008-10-04T13:08:38+09:00	2008-10-04T13:08:38+09:00		OverTaker
AB5 CP6 Release	209	Socketクラスの実装(System.Net.Socket)	ablib		タスク	OverTaker	new	2008-10-04T13:09:28+09:00	2008-10-04T13:09:28+09:00		OverTaker
AB5 CP6 Release	210	IPHostEntryクラスの実装	ablib		タスク	OverTaker	new	2008-10-06T09:57:16+09:00	2008-10-06T09:57:16+09:00		OverTaker
AB5 CP6 Release	223	NetworkStreamクラスの実装	ablib		タスク	dai	new	2008-10-18T18:23:35+09:00	2008-10-18T18:23:35+09:00		OverTaker
AB5 CP6 Release	249	エディタでTabキーを押すと強制終了する場合がある	IDE		タスク	イグトランス (egtra)	new	2011-06-04T22:34:51+09:00	2011-06-04T22:34:51+09:00	http://www.activebasic.com/forum/viewtopic.php?t=2501	イグトランス (egtra)
AB5 CP6 Release	198	整数から列挙体への変換ができない	Compiler		バグ	dai	new	2008-08-21T10:14:33+09:00	2008-08-21T10:14:33+09:00	"次のプログラムでは、e = E.Bとなることを期待しましたが、そうなりません。デバッガで見る限り、eのオブジェクト参照そのものが1になっているようです。
{{{
Enum E
	A = 0
	B = 1
End Enum
Dim dw = 1 As DWord

Dim e = dw As E
Debug
}}}"	イグトランス (egtra)
AB5 CP6 Release	211	メンバ関数名とプロパティ名が同一のときに起こる不具合	Compiler		バグ	dai	new	2008-10-08T22:04:23+09:00	2008-10-08T22:04:35+09:00	"メンバ関数名とプロパティ名を同一にしてgetterだけ宣言していると、メンバ変数に値が代入できなくなる。

{{{
#console

Dim c = New ClassA(20)
System.Console.WriteLine(c.Value)
System.Console.ReadLine()

Class ClassA
	Value As Long
Public
	Sub ClassA(v As Long)
		Value = v
	End Sub

	Function Value() As Long
		Return Value
	End Function
End Class
}}}
"	OverTaker
AB5 CP6 Release	239	オブジェクト参照からインタフェース参照へキャスト可能にする	Compiler		バグ	イグトランス (egtra)	new	2009-02-27T20:10:31+09:00	2009-02-27T20:10:31+09:00	"次のコードがコンパイルできない問題を修正します。
{{{Class Hoge
	Implements IUnknown
Public
	Function AddRef() As DWord
	End Function

	Function Release() As DWord
	End Function

	Function QueryInterface(ByRef riid As IID, ByRef pv As Any) As HRESULT
	End Function
End Class

Dim o = New Hoge
Dim u = o As IUnknown '""Operator As"" は定義されていません。}}}"	イグトランス (egtra)
AB5 CP6 Release	246	Constで文字列の\0以降が切れているおそれがある	Compiler		バグ	イグトランス (egtra)	new	2011-06-04T22:11:42+09:00	2011-06-04T22:12:28+09:00	"http://www.activebasic.com/forum/viewtopic.php?p=10884 参照。

再現コード
{{{
Const STR = Ex""A\0B""

MessageBox(NULL, STR + 2, """", MB_OK)
}}}"	イグトランス (egtra)
AB5 CP6 Release	247	可変個引数の省略が機能しなくなっている	Compiler		バグ	イグトランス (egtra)	new	2011-06-04T22:30:49+09:00	2011-06-04T22:34:08+09:00	詳細: http://www.activebasic.com/forum/viewtopic.php?t=2669	イグトランス (egtra)
AB5 CP6 Release	248	行番号を付けると正常に動作しない問題の調査	Compiler		バグ	イグトランス (egtra)	new	2011-06-04T22:33:37+09:00	2011-06-04T22:33:37+09:00	詳細: http://www.activebasic.com/forum/viewtopic.php?t=1871	イグトランス (egtra)
AB5 CP6 Release	62	インタフェースのメソッドにConstを指定できない	Compiler		バグ（ケアレスミス）	dai	new	2007-02-22T17:55:19+09:00	2007-02-22T17:55:19+09:00	"例えば次のようなコードで発生します。
{{{
Interface IFoo
    Const Sub Method() '文法が間違っています
End Interface
}}}"	イグトランス (egtra)
AB5 CP6 Release	145	Blittableクラス型の変数を作れない	Compiler		バグ（ケアレスミス）	dai	new	2007-11-19T23:09:30+09:00	2007-11-19T23:09:30+09:00	"次の3例から、System.Int32型の変数を作ろうとしてもLong型になってしまうことが推測される。ここはSystem.Int32型の変数として存在できるようにして欲しい。
{{{
Sub Proc(o As Object)
End Sub

Dim i As System.Int32(100)

Proc(i) '""Proc""の第1パラメータが、LongからSystem.Objectに変換できません。
}}}
{{{
Sub Proc(o As Object)
End Sub

Dim i = New System.Int32(100) '[警告] *System.Int32からLongに強制変換されています。

Proc(i) '""Proc""の第1パラメータが、LongからSystem.Objectに変換できません。
}}}
{{{
Sub Proc(o As System.Int32) '[警告] ""Proc""の第1パラメータが、*System.Int32からLongに強制変換されています。
End Sub

Proc(New System.Int32(100))
}}}
次のようにObject型とするとうまくいく。
{{{
Sub Proc(o As Object)
End Sub

Dim i = Nothing As Object
i = New System.Int32(100)

Proc(i)
}}}"	イグトランス (egtra)
AB5 CP6 Release	146	エラーメッセージで表示される当該ファイル及び行と実際のそれとが異なる	Compiler		バグ（ケアレスミス）	dai	new	2007-11-20T00:09:44+09:00	2007-11-20T00:09:44+09:00	"@385でStringBuilder.ab、385行目、replaceCoreメソッド内、ArgumentExceptionを誤ってArgument'''l'''Exceptionと書いてライブラリをコンパイルしたところ、「basic.sbp(17) - ""ArgumentlException"" 無効な識別子です」となってしまった。

使用コンパイラは、現時点での最新、@382の32ビット版。Debug/Release双方で発生。"	イグトランス (egtra)
AB5 CP6 Release	178	デリゲートに関数へのポインタを追加できない	Compiler		バグ（ケアレスミス）	イグトランス (egtra)	new	2008-07-16T02:19:58+09:00	2008-07-16T02:19:58+09:00	"#149の関連として、次のコードがコンパイル・実行できるようになってほしいです。
{{{
Delegate Sub Callback1()

Sub P1()
End Sub

Dim pfn As *Sub()
pfn = AddressOf(P1)

Dim c = New Callback1(pfn)
c += pfn
}}}
試しに、ab5.0\system\templates\delegate.tabに次のコンストラクタを挿入して試してみましたが、メンバ関数をAddressOfしている箇所でコンパイルエラーとなってしまいました。それに、これではFunctionに対応できていません。
{{{
Sub #name#(pfn As *Sub(#params#))
	simpleDelegates.Add( New System._SimpleDelegate( pfn As VoidPtr ) )
End Sub
}}}
なお、上のコードの*Sub(#params#)をVoidPtrにすると、New PaintDCEventHandler(p)として関数ポインタからのデリゲートの生成に成功しましたが、これだと型チェックがないので、正式版でこれを採用したくはありません。"	イグトランス (egtra)
AB5 CP6 Release	111	Declareで引数・戻り値にタイプセーフ列挙型・クラス・インタフェースを使用可能にする	Compiler		バグ（未実装）	dai	new	2007-05-07T01:22:10+09:00	2007-05-07T01:22:10+09:00	詳しくはhttp://www.activebasic.com/forum/viewtopic.php?p=8475を参照してください	イグトランス (egtra)
AB5 CP6 Release	54	ショートサーキット演算子（AndAlso、OrElse）を追加する	Compiler		タスク	dai	new	2007-02-12T20:01:34+09:00	2007-03-13T04:40:07+09:00		dai
AB5 CP6 Release	199	(Interface)-Abstract-Overrideという構造でメソッドの上書きができない	Compiler		バグ	dai	new	2008-08-21T13:11:28+09:00	2008-08-21T13:11:28+09:00	"次のコードが「未解決の仮想関数が存在する」と言われてコンパイルできません。AbstractをVirtualに代えるとコンパイルできます。
{{{
Interface I
	Sub proc()
End Interface

Class B
	Implements I
Public
	Abstract Sub proc()
'	Virtual Sub proc()
'	End Sub
End Class

Class D
	Inherits B
Public
	Override Sub proc()
	End Sub
End Class

Dim d = New D
}}}"	イグトランス (egtra)
AB5 CP6 Release	9	共用体を実装する。	Compiler		機能拡張	dai	new	2006-12-23T16:24:23+09:00	2007-03-25T05:54:38+09:00	"共用体を実装する。下記URLに記載してある仕様にをベースに実装する。

http://dev.activebasic.com/dev_wiki/index.php/%E5%85%B1%E7%94%A8%E4%BD%93"	dai
AB5 CP6 Release	10	ヒアドキュメントを実装する。	Compiler		機能拡張	dai	new	2006-12-23T16:25:24+09:00	2006-12-23T16:25:24+09:00	"ヒアドキュメントを実装する。下記URLに記載してある仕様にをベースに実装する。

http://dev.activebasic.com/dev_wiki/index.php/%E3%83%92%E3%82%A2%E3%83%89%E3%82%AD%E3%83%A5%E3%83%A1%E3%83%B3%E3%83%88"	dai
AB5 CP6 Release	33	Breakステートメントを追加する。	Compiler		機能拡張	dai	new	2007-01-14T05:30:39+09:00	2007-01-14T05:30:39+09:00	"・For[[BR]]
・While[[BR]]
・Do[[BR]]
・Select[[BR]]
[[BR]]
今まではExit For、Exit Whileなど、ステートメントに応じてスコープ抜け出し記述方法が異なっており、ループ形式の変更に伴うコード修正が生じてしまうというデメリットを含んでいた。そこで、汎用的に利用できるBreakステートメント、即ちループ系のスコープから抜け出す処理を提供するステートメントを追加する。"	dai
AB5 CP6 Release	34	グローバル関数とクラスメソッドのオーバーロード	ablib		要望	dai	new	2007-01-14T23:37:16+09:00	2007-03-14T15:39:19+09:00	http://www.activebasic.com/forum/viewtopic.php?p=7534#7534	OverTaker
AB5 CP6 Release	176	デリゲート+=の右辺にNew デリゲートを指定するとエラーになる	Compiler		バグ（ケアレスミス）	dai	new	2008-07-12T14:59:21+09:00	2008-07-12T14:59:21+09:00	"次のコードがコンパイルエラーになる。
{{{
#console

Delegate Sub Callback1()

Class T
	Static Sub f() : Print ""hello"" : End Sub
	Static Sub g() : Print ""world"" : End Sub
End Class

Dim f = New Callback1(AddressOf(T.f))
f += New Callback1(AddressOf(T.g))

f()

System.Console.ReadLine()
}}}
出力は次の通り（11行目は+=の行）。
{{{
t.ab(11) : 定数式にリテラル値、または定数以外のものが含まれています。
t.ab(11) : 定数式にリテラル値、または定数以外のものが含まれています。
t.ab(11) : DoubleからCallback1に変換できません。
}}}

次のように書けば回避できるので、優先度微にした。
{{{
'その1
Dim f = New Callback1(AddressOf(T.f))
Dim g = New Callback1(AddressOf(T.g))
f += g
'その2
Dim f = New Callback1(AddressOf(T.f))
f += AddressOf(T.g)
}}}"	イグトランス (egtra)
ABの未来のバージョン Release	226	モジュールのベースアドレスを指定できるようにする	Compiler		タスク	イグトランス (egtra)	new	2008-10-26T19:20:19+09:00	2008-10-26T19:20:19+09:00	現在、ベースアドレスは指定できないが、将来的にはコンパイラオプションか何かで指定できるようにしたい。	イグトランス (egtra)
ABの未来のバージョン Release	205	参照型のグローバル変数に定義前で代入するとうまくいかない。	Compiler		バグ	dai	new	2008-10-02T01:39:05+09:00	2008-10-02T01:39:05+09:00	"期待どおりになる例（整数型）
{{{
#console

Sub f()
	x = 42
End Sub

f()
Dim x = 0 As Long
Print x
}}}
期待どおりになる例（Object型）
{{{
#console

Sub f()
	x = New Object
End Sub

Dim x = Nothing As Object
f()
Print ObjPtr(x) As ULONG_PTR 'アドレスらしき意味不明な値
}}}
期待どおりにならない例（Object型）
{{{
#console

Sub f()
	x = New Object
End Sub

f()
Dim x = Nothing As Object
Print ObjPtr(x) As ULONG_PTR '0
}}}
最後の例でも、2つ目と同様にアドレスが出力されると期待しましたが、そうではありませんでした（初期化子の値の0が出力されます）。

ようするにこれは、初期化をいつ行うかということが明確でないという問題と考えます。言語の仕様としてどうあるべきかを決定しないといけないと思います。"	イグトランス (egtra)
ABの未来のバージョン Release	224	出力先の空き容量が足りなかったらコンパイルエラーを出すようにする	Compiler		バグ	イグトランス (egtra)	new	2008-10-21T01:40:21+09:00	2008-10-21T01:40:21+09:00	現在は、空き容量が足りなくても何も言わず、ディスクが一杯になるまでの中途半端な出力を行う。特に、その状態でデバッグ実行を始めようとすると、一向に何も起こらず不親切。そこで、コンパイラが出力を行う時点でエラーを出すようにする。	イグトランス (egtra)
ABの未来のバージョン Release	101	非静的メソッドと静的メソッドで多重定義できない	Compiler		バグ（ケアレスミス）	dai	new	2007-04-06T18:38:37+09:00	2009-07-31T15:09:00+09:00	"{{{
Class Test
	Sub SomeMethod()
	End Sub

	Static Sub SomeMethod() '""SomeMethod"" はすでに定義されています。
	End Sub
End Class
}}}"	イグトランス (egtra)
ABの未来のバージョン Release	204	デバッガでToStringの内容を表示させる	Debugger		機能拡張	イグトランス (egtra)	new	2008-09-28T21:00:59+09:00	2008-09-28T21:00:59+09:00	クラスの場合、メンバ変数だけ見せられるよりも分かりやすいと思います。	イグトランス (egtra)
ABの未来のバージョン Release	236	水平スクロールメッセージに対応する	IDE		タスク	イグトランス (egtra)	new	2008-12-27T18:13:36+09:00	2008-12-27T18:13:36+09:00	Vistaで追加されたWM_MOUSE'''__H__'''WHEELへテキストエディタを対応させます。	イグトランス (egtra)
ABの未来のバージョン Release	193	abdev.exeのタブをDPIの変更に追従させる	IDE		バグ	dai	new	2008-08-15T17:56:17+09:00	2008-08-15T17:56:17+09:00	"120DPI環境でabdev.exeを使用すると、次の問題に気付きました。可能なものはDPIの変化に対応させたいです。

 * ツールバーの大きさが変化しない。
 * タブの大きさが変化しない。
 * オプションのダイアログボックスで一部の文言の右側が欠ける。

"	イグトランス (egtra)
ABの未来のバージョン Release	150	エディタをCtrl+Delによる行末までの削除に対応させる	IDE		バグ（未実装）	イグトランス (egtra)	new	2007-12-06T19:24:04+09:00	2008-12-14T16:05:02+09:00	Windowsエディトコントロールでは、Ctrl+Delが現在カーソルがある位置から行末までの文字を削除するというショートカットキーになっている。現在のAB5のエディタはこれに対応していないので、実装してほしい。	イグトランス (egtra)
ABの未来のバージョン Release	196	ThreadPoolの実装をやり直す	ablib		機能拡張	イグトランス (egtra)	new	2008-08-20T03:29:08+09:00	2008-08-20T03:29:08+09:00	現在のThreadPoolは、1スレッドしか生成せず満足とは言えない実装です。複数スレッドを名前通り「プール」するようにしたいです。どなたかやる気のある人、お願いします。	イグトランス (egtra)
ABの未来のバージョン Release	99	Random クラスの作成	ablib		タスク	イグトランス (egtra)	new	2007-04-03T23:58:21+09:00	2008-08-05T02:14:35+09:00	System.Randomは乱数を生成するクラス	イグトランス (egtra)
ABの未来のバージョン Release	244	コンソールでのEOF (Ctrl+Z) 入力の挙動を調査する	ablib		タスク	イグトランス (egtra)	new	2009-06-29T00:32:51+09:00	2009-06-29T00:32:51+09:00	#243の続き。[707]ではConsoleReader/ReadConsoleで対処したが、リダイレクトが行われたり、StreamReader/ReadFileでコンソールから読み取られたりする場合の挙動が問題ないか調べておきたい。	イグトランス (egtra)
ProjectEditor Phase2β Release	44	レジストリ書き込みに失敗したときにメッセージを表示する	IDE		タスク	dai	new	2007-02-01T03:47:08+09:00	2007-10-05T02:40:47+09:00	"VistaのUACが有効なときはレジストリへの書き込みができず、関連付けが正常に行われない。

ユーザが混乱する恐れがあるので、きちんとメッセージを表示する必要がある。"	dai
ProjectEditor Phase2β Release	2	IDEのMDIウィンドウを汎用的なものへ変更。	IDE		機能拡張	dai	new	2006-12-23T02:26:44+09:00	2007-10-05T02:39:44+09:00	現状のIDEが搭載するコンパイルビューやデバッグビューはGUI固定で汎用性が乏しい。ドッキングまたはフローティングが可能なタブ型コントロールを用意し、各種画面要素を配置しなおす。	dai
ProjectEditor Phase2β Release	3	プロジェクト内の全文検索を可能にする。	IDE		機能拡張	dai	new	2006-12-23T15:11:16+09:00	2007-10-05T02:39:57+09:00		dai
ProjectEditor Phase2β Release	4	関数またはメソッドの呼び出し元を検索できるようにする。	IDE		機能拡張	dai	new	2006-12-23T15:17:11+09:00	2007-10-05T02:40:04+09:00		dai
ProjectEditor Phase2β Release	5	変数の参照元を検索できるようにする。	IDE		機能拡張	dai	new	2006-12-23T15:23:02+09:00	2007-10-05T02:40:18+09:00		dai
ProjectEditor Phase2β Release	6	識別子の定義を検索できるようにする。	IDE		機能拡張	dai	new	2006-12-23T15:35:08+09:00	2007-10-05T02:40:27+09:00	識別子（型、変数、関数、メンバ、メソッドなど…）の定義を検索できるようにする。	dai
ProjectEditor Phase2β Release	13	プロジェクト内ファイルのインクルードの順序を指定できるようにする。	IDE		機能拡張	dai	new	2006-12-25T15:11:45+09:00	2007-10-05T02:40:34+09:00	プロジェクト内ファイルのインクルードの順序を指定できるようにする。	dai
ProjectEditor Phase2β Release	140	エディタにCtrl+Gで指定行にジャンプする機能がほしい	IDE		要望	dai	new	2007-11-11T18:20:31+09:00	2007-11-11T18:20:31+09:00	"Visual StudioをはじめとしたIDEに存在する便利な機能。

報告されたコンパイルエラーを見てジャンプするときなどに役立つ。
ビルド結果をダブルクリックするのが面倒なときにはおすすめだと思う。"	OKUMURA Yoshio
ProjectEditor Phase2β Release	74	キーワード入力時のスタイル統一	IDE		要望	dai	new	2007-03-07T00:13:15+09:00	2007-10-05T02:40:58+09:00	"DimやPrintなどといったコンパイラが認識するキーワードが入力された場合に、エディタが自動的に大文字小文字を揃えてやる（dIM→Dim、PRINT→Printなどのように）機能が欲しいです。

これによりある程度コーディングスタイルの統一を図り、また入力支援として便利な機能になると思います。"	イグトランス (egtra)
ablib_α1 Release	14	Controlの実装 (ActiveBasic.Windows.UI)	ablib		タスク	イグトランス (egtra)	assigned	2006-12-26T17:26:01+09:00	2008-10-18T13:04:13+09:00	Form クラスの基底であるControl クラスを実装する。当面ユーザ補助、イベントなど一部の機能は実装を見送る。http://dev.activebasic.com/dev_wiki/index.php/Control_%E3%82%AF%E3%83%A9%E3%82%B9	イグトランス (egtra)
ablib_α1 Release	238	FormsにTimerを追加する	ablib		タスク	NoWest	new	2009-01-19T09:10:27+09:00	2009-01-19T18:15:34+09:00	"タイマーイベントが使えるといろいろとFormで遊べるようになるので早めに追加する

機能的にSetTimerとKillTimerでは難しいと思われる
Timerクラスの実装には是非ともコールバック関数を使いたいが、
SetTimer関数はコールバックにユーザーデータを渡せないようです。
そこでウィンドウハンドルにオブジェクトポインタをこっそり渡す方法を考えましたが
どうやらウィンドウハンドルがNULLではない場合、
指定されたウィンドウハンドルが所属するスレッドにメッセージがポストされ
そこからコールバック関数が呼び出されるようです。

SetTimerではそのあたりの実装がやりにくいのでtimeSetEventでの実装を試みています。
"	NoWest
ablib_α1 Release	191	外部で生成されたスレッドでの例外処理に対応する	ablib		バグ	イグトランス (egtra)	new	2008-08-14T00:54:55+09:00	2008-08-14T00:54:55+09:00	現在、プロセス起動と同時に開始されたスレッドとThreadクラスで作られたスレッド以外では、スレッド情報の初期化が行われません。このため、例外処理が使用できないなどの弊害が起こっています。これに対処するため、例外処理周り（必要ならGCの方も）の修正を行います。	イグトランス (egtra)
ablib_α1 Release	64	BinaryWriterクラスの実装(System.IO)	ablib		タスク	NoWest	assigned	2007-02-23T02:07:22+09:00	2008-03-17T16:52:21+09:00		NoWest
ablib_α1 Release	65	BinaryReaderクラスの実装(System.IO)	ablib		タスク	NoWest	assigned	2007-02-23T02:07:46+09:00	2008-02-27T01:38:52+09:00		NoWest
ablib_α1 Release	81	com.VBObjectクラスの作成	ablib		タスク	イグトランス (egtra)	assigned	2007-03-10T23:01:22+09:00	2007-03-25T13:38:57+09:00	これはIDispatchのラッパークラスです。VBでObject型と呼ばれているものに近いです。クラスの詳細はhttp://dev.activebasic.com/dev_wiki/index.php/VBObject_%E3%82%AF%E3%83%A9%E3%82%B9へ。	イグトランス (egtra)
ablib_α1 Release	212	GroupBoxの実装	ablib		タスク	イグトランス (egtra)	new	2008-10-18T13:06:00+09:00	2008-10-18T13:06:00+09:00	AcitveBasic.Windows.UIのグループボックス	イグトランス (egtra)
ablib_α1 Release	213	ラジオボタンの実装	ablib		タスク	イグトランス (egtra)	new	2008-10-18T13:06:51+09:00	2008-10-18T13:06:51+09:00	AcitveBasic.Windows.UIのラジオボタン	イグトランス (egtra)
ablib_α1 Release	214	コンボボックスの実装	ablib		タスク	イグトランス (egtra)	new	2008-10-18T13:08:16+09:00	2008-10-18T13:08:16+09:00	AcitveBasic.Windows.UIのコンボボックス	イグトランス (egtra)
ablib_α1 Release	215	アップダウンコントロールの実装	ablib		タスク	イグトランス (egtra)	new	2008-10-18T13:08:55+09:00	2008-10-18T13:08:55+09:00	AcitveBasic.Windows.UIのアップダウンコントロール	イグトランス (egtra)
ablib_α1 Release	216	トラックバーの実装	ablib		タスク	イグトランス (egtra)	new	2008-10-18T13:09:37+09:00	2008-10-18T13:09:37+09:00	AcitveBasic.Windows.UIのトラックバー	イグトランス (egtra)
ablib_α1 Release	217	プログレスバーの実装	ablib		タスク	イグトランス (egtra)	new	2008-10-18T13:10:17+09:00	2008-10-18T13:10:17+09:00	AcitveBasic.Windows.UIのプログレスバー	イグトランス (egtra)
ablib_α1 Release	218	スクロールバー（コントロール）の実装	ablib		タスク	イグトランス (egtra)	new	2008-10-18T13:10:59+09:00	2008-10-18T13:10:59+09:00	AcitveBasic.Windows.UIのスクロールバー	イグトランス (egtra)
ablib_α1 Release	219	リストビューの実装	ablib		タスク	イグトランス (egtra)	new	2008-10-18T13:11:35+09:00	2008-10-18T13:11:35+09:00	AcitveBasic.Windows.UIのリストビュー	イグトランス (egtra)
ablib_α1 Release	220	ツリービューの実装	ablib		タスク	イグトランス (egtra)	new	2008-10-18T13:12:44+09:00	2008-10-18T13:12:44+09:00	AcitveBasic.Windows.UIの	イグトランス (egtra)
ablib_α1 Release	221	イメージボックスの実装	ablib		タスク	イグトランス (egtra)	new	2008-10-18T13:13:25+09:00	2008-10-18T13:13:25+09:00	AcitveBasic.Windows.UIのイメージボックス	イグトランス (egtra)
ablib_α1 Release	232	UTF16Encodingクラスの実装	ablib		タスク	イグトランス (egtra)	new	2008-11-09T14:25:14+09:00	2008-11-09T14:25:14+09:00	UTF-16でエンコーディングを行うクラスを実装します。	イグトランス (egtra)
ablib_α1 Release	233	IMultiLanguageベースのエンコーディングクラスを実装する	ablib		タスク	イグトランス (egtra)	new	2008-11-09T14:32:49+09:00	2008-11-09T14:32:49+09:00	#227を受けて実装します。これにより、EUC-JP (CP51932)やISO-2022-JP (CP50220)が使用可能になるはずです。	イグトランス (egtra)
ablib_α1 Release	237	組込型の要素でのForeachを可能にする	Compiler		タスク	イグトランス (egtra)	assigned	2009-01-10T00:46:21+09:00	2009-01-10T00:46:31+09:00	内部的に、Foreachされる変数（Foreach e In xのe）がNothingで初期化されているため、これが組込型になる場合、エラーが発生するでしょう。これに対処し、要素が組込型でもForeachできるようにします。	イグトランス (egtra)
ablib_α1 Release	242	画像関係の整備 (System.Drawing)	ablib		タスク	イグトランス (egtra)	new	2009-04-02T21:58:17+09:00	2009-04-02T21:58:17+09:00	Image/Bitmap/Metafileなどのクラスの作成。BMP/PNG/JPEG/GIFでの保存もできるようにしたい。	イグトランス (egtra)
ablib_α1 Release	197	ファイナライザが親クラスを辿って呼ばれない	ablib		バグ	イグトランス (egtra)	new	2008-08-21T00:02:04+09:00	2008-08-21T00:02:04+09:00	"{{{
#console
Class Hoge
	Sub ~Hoge()
		Print ""~Hoge()""
	End Sub
End Class

Class Foo
	Sub ~Foo()
		Print ""~Foo()""
	End Sub
End Class

Dim o = Nothing As Object
o = New Foo
o = Nothing
System.GC.Collect()

Sleep(-1)
}}}
このプログラムの出力は次のようになることを期待した。
{{{
~Foo()
~Hoge()
}}}
しかし、実際にはこうだった。
{{{
~Foo()
}}}
誰か直しちゃってください。"	イグトランス (egtra)
ablib_α1 Release	43	Input #ステートメントでエラー	ablib		バグ（ケアレスミス）	dai	new	2007-01-30T02:04:07+09:00	2007-01-30T02:04:07+09:00	"command.sbp(230) - ""Length"" のパラメータ指定が間違っています

Input #ステートメントで文字列型に代入すると上記のエラーが出る模様。

Stringクラスのメソッド呼び出しに対応していないので、修正する。"	dai
ablib_α1 Release	60	Inkey$内部で仮想キーコードの値を元に文字列を構築している	ablib		バグ（ケアレスミス）	dai	new	2007-02-18T23:15:35+09:00	2007-02-21T19:28:50+09:00	"prompt.sbpのInkey$では、戻り値となる入力文字を_PromptSys_KeyCharから得ている。
_PromptSys_KeyCharへは、PromptProcでWM_KEYDOWNが来たときにwParamの値をそのまま代入している。
WM_KEYDOWN時のwParamは仮想キーコードであり、これを基に文字列を構築するのは問題だと思われる。
ただし数字とアルファベットの仮想キーコードがASCIIコードと一致しているため、今まで問題とならなかったのだろう。

個人的には、最後にWM_CHARで読み取った文字を返すことにしたら良いと思う。"	イグトランス (egtra)
ablib_α1 Release	79	プロンプトウィンドウの入力でバッファオーバーフローが発生する	ablib		バグ（ケアレスミス）	イグトランス (egtra)	new	2007-03-10T22:39:00+09:00	2007-03-10T22:39:00+09:00	行毎に文字数を固定してあり、しかも文字数を超えての書き込みを阻止していない（はずの）ためバッファオーバーフローが発生します。現在_System_mallocを使っているので、必要に応じて_System_reallocでバッファを延ばすことで解決させようと思います。	イグトランス (egtra)
ablib_α1 Release	155	_System_CGarbageCollection.__realloc内でTryを使うと落ちる	ablib		バグ（ケアレスミス）	イグトランス (egtra)	new	2008-01-21T19:16:52+09:00	2008-01-21T19:16:52+09:00	[http://www.activebasic.com/forum/viewtopic.php?t=1934#9410 ライブラリ開発/原因不明のバグ報告/realloc内でのTryスコープ]の原因調査。可能なら修正まで。	イグトランス (egtra)
ablib_α1 Release	163	基本型とEnumの真偽が判定できないことがある	Compiler		バグ（ケアレスミス）	dai	new	2008-03-12T23:01:58+09:00	2008-03-12T23:01:58+09:00	"左側に基本型、右側にタイプセーフなEnumを置いた場合のみ、真偽が判定されない。

{{{
#console

Enum E
	x = 1
End Enum

Dim x = 1 As Long

If x = E.x Then 'おかしいところ
	Print ""true""
Else
	Print ""false""
End If

If E.x = x Then '正常
	Print ""true""
Else
	Print ""false""
End If

Console.ReadLine()
}}}
"	OverTaker
ablib_α1 Release	59	SoundPlayerクラスの実装(System.Media)	ablib		タスク	NoWest	new	2007-02-18T21:25:51+09:00	2007-02-18T21:25:51+09:00	"個人的に必要なだけで需要がどれだけあるかは未知数ですが、
wavファイルくらいは再生できないと芸がないでしょうね。
DirectSound使えってな突っ込みもありそうですが、アレはアレで面倒なので
"	NoWest
ablib_α1 Release	123	objidl.sbpの実装	ablib		タスク	イグトランス (egtra)	assigned	2007-07-27T15:22:52+09:00	2007-07-27T15:22:59+09:00	objidl.h/idlは、COMの根底に関わるインタフェースが多数宣言されており、COMの利用に必要不可欠。それをABのヘッダへ移植する。	イグトランス (egtra)
ablib_α1 Release	124	oleidl.abの実装	ablib		タスク	イグトランス (egtra)	assigned	2007-07-27T15:23:34+09:00	2007-07-27T15:23:39+09:00	oleidl.h/idlは、OLEに関わるインタフェースが多数宣言されており、OLEの利用に必要不可欠。それをABのヘッダへ移植する。	イグトランス (egtra)
ablib_α1 Release	125	exdisp.abの実装	ablib		タスク	イグトランス (egtra)	assigned	2007-07-27T15:24:58+09:00	2007-07-27T15:25:03+09:00	exdisp.h/idlは、シェルやブラウザコントロールに関わるインタフェースが多数宣言されており、それらの利用に必要不可欠。それをABのヘッダへ移植する。	イグトランス (egtra)
ablib_α1 Release	156	Deleteを明示的に行うとデストラクタが2回呼ばれてしまう	ablib		タスク	イグトランス (egtra)	new	2008-01-22T15:38:31+09:00	2008-01-22T15:40:48+09:00	"次のコードで、~Hoge()が2回呼ばれることから明らか。コメントアウトしたポインタ構文では1回しか呼ばれない模様。
{{{
#console

Class Hoge
	Sub ~Hoge()
		Print ""~Hoge()""
	End Sub
End Class

Dim h = New Hoge
Delete ObjPtr(h)
h = Nothing
/*
Dim h As *Hoge
h = New Hoge
Delete h
*/
Dim i As Long
For i = 0 To 10
	GC_malloc(4 * 1024 * 1024)
Next

Sleep(5000)
}}}
"	イグトランス (egtra)
ablib_α1 Release	240	OpenGL関連クラスの実装	ablib		タスク	NoWest	new	2009-03-15T23:29:03+09:00	2009-03-15T23:29:03+09:00	"Formもうまく動き始めたので、これを前提に
実装をはじめたいと思います。
"	NoWest
