Skybuck Flying schrieb:
So now I am wondering if it's safe to convert:
void test( void *data )
to
procedure test( var data );
AFAIR this can cause problems, when the C code tests "data" for NULL.
I don't want no strange stack problems or access violations or anything
like that, so I have to make sure it's 100% the same and safe ?!?
The safe way is using pointer types in OPL, for C "*" parameters.
The convenience would be nice to have though...
My thoughts on the c/c++ inconsistency:
Prototypes for routines:
1: void test(void *data)
2: void test(void &data)
The first one does compile in visual studio 2010 and the second does not.
Right. C++ "&" references never can be void or NULL, while C "*" and
Delphi "var" (by-ref) parameters can be untyped and Nil. That's one of
the subtle differences between C++ and OPL, which should be handled
properly by every converter.
DoDi
_______________________________________________
fpc-devel maillist - [email protected]
http://lists.freepascal.org/mailman/listinfo/fpc-devel