in the update log you find a little entry called:
- Changed: Call(C)Function(Fast) parameters have been changed from 'Any' to 'Integer'.
why that? It's simply wrong to cast 32bit floats in a callfunctionfast to int. For example take a look inside the directX documention:
D3DXMatrixRotationYawPitchRoll or D3DXMatrixTranslation - both function take 32bit floats as parameter. With this change in the update you can no longer use callfunctionfast to use these function. Please turn it back... It's a pain in the a** when you work a lot with the win32 api or directX directly.
Yes, I know that I can use prototyps, anyway, this casting behavior is wrong.
CallFunctionFast cast to int?
- Arctic Fox
- Enthusiast

- Posts: 609
- Joined: Sun Dec 21, 2008 5:02 pm
- Location: Aarhus, Denmark
Re: CallFunctionFast cast to int?
Have a look at this thread
http://www.purebasic.fr/english/viewtop ... 13&t=40303
You have to use pointers for your variable parameters.
http://www.purebasic.fr/english/viewtop ... 13&t=40303
You have to use pointers for your variable parameters.
Re: CallFunctionFast cast to int?
This change was made to prevent problems in connection with double and quad types. Prototypes are the proper way to do this anyway.
quidquid Latine dictum sit altum videtur
Re: CallFunctionFast cast to int?
Use prototypes, it's safer, smaller and faster.

