AB313,424,AB5CP5で確認。
AB262でもエラーは出ませんでした。
コード: 全て選択
Dim a b c As Long,x y z As Long
x y z=a b cコード: 全て選択
const a number=1
Dim b As Long
b=a numberコード: 全て選択
Sub asm(a As Long,b As Long)
End Sub
const add eax	=1
const edx		=2
asm(add eax,edx)p.s. [ここをクリックすると内容が表示されます]
次は実行時に落ちる色々弄った結果、aをCで言う所の*aとして扱ってるのに引数として0とかを渡してるのが原因だと判明。
次のようにすると異常停止はしないようだ。(非常にトリッキーな動作をするが・・・。)
コード: 全て選択
Sub test(ByRef a As Long)
	a=a+1
End Sub
Dim ByVal eax As Long
Dim eax As Long
test(ByVal eax)次のようにすると異常停止はしないようだ。(非常にトリッキーな動作をするが・・・。)
コード: 全て選択
#prompt
Sub test(ByRef a As Long)
	a=a+1
End Sub
Sub cpy(ByRef dst As Long,ByRef src As Long)
	dst=src
End Sub
Dim ByVal eax As Long
Dim eax As Long
eax=VarPtr(ByVal eax)
test(ByVal eax)
Dim b As Long
cpy(b,ByVal eax)
Print b
Print eax