Cyclone Scheme  0.9
#define return_copy (   ptr,
  obj 
)
Value:
{ \
if (!is_object_type(obj)) \
return obj; \
t = type_of(obj); \
if (t == double_tag) { \
((common_type *)ptr)->double_t.hdr.mark = gc_color_red; \
((common_type *)ptr)->double_t.hdr.grayed = 0; \
((common_type *)ptr)->double_t.tag = double_tag; \
((common_type *)ptr)->double_t.value = double_value(obj); \
return ptr; \
} else { \
return obj; \
} \
}
#define gc_color_red
Definition: types.h:265
Definition: types.h:46
unsigned char tag_type
Definition: types.h:69
#define type_of(obj)
Definition: types.h:75
#define double_value(x)
Definition: types.h:786
A union of all the constant-size objects.
Definition: types.h:1308
#define is_object_type(x)
Definition: types.h:565