TRT_INLINE void * trt_assign_object_var (void *object, void *value);
This function must be invoked if the object pointed to by value
has just been assigned to an object variable of the object
. This
is needed in case the garbage collector performs non-atomic runs. Thus,
if you're writing library code in C, you must use this function.
The compiler outputs calls to this function if the flag
-fincremental-gc
is provided on the command line
(see section Invoking otmc).
[Note: Obviously, the type of the two arguments should be
tom_object
instead of void *
. However, since debugging a
TOM program currently means debugging the (not so unreadable, to the
trained eye at least) C code output by the compiler, the compiler types
each object in the output to its C struct (as far as the compiler can
know the layout at compile time). Hence, void *
is used in some
places where really tom_object
should be used, to avoid numerous
casts or warnings. End note.]
Go to the first, previous, next, last section, table of contents.