Opened 16 years ago
Last modified 16 years ago
#173 assigned バグ
関数ポインタが正常に呼び出せない
Reported by: | dai | Owned by: | dai |
---|---|---|---|
Priority: | 最優先-blocker | Milestone: | AB5 CP6 |
Component: | Compiler | Version: | |
Keywords: | Cc: |
Description
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)
戻り値がおかしい。
Note:
See TracTickets
for help on using tickets.
どうやら、AddressOf関数の戻り値がVoidPtrになっている模様。 ここは、Dim宣言で関数ポインタ型を指定すれば正常動作が望める(下記コード参照)。
AB CP5では、上記事項は制約とし、次回リリースで解消する。 解消の方法としては、AddressOf関数が適切な関数ポインタ型を返すようにする。