cvsuser 04/03/16 11:02:14
Modified: src objects.c
Log:
Flag setting is good
Revision Changes Path
1.58 +6 -1 parrot/src/objects.c
Index: objects.c
===================================================================
RCS file: /cvs/public/parrot/src/objects.c,v
retrieving revision 1.57
retrieving revision 1.58
diff -u -w -r1.57 -r1.58
--- objects.c 16 Mar 2004 18:56:45 -0000 1.57
+++ objects.c 16 Mar 2004 19:02:14 -0000 1.58
@@ -1,6 +1,6 @@
/*
Copyright: 2001-2003 The Perl Foundation. All Rights Reserved.
-$Id: objects.c,v 1.57 2004/03/16 18:56:45 dan Exp $
+$Id: objects.c,v 1.58 2004/03/16 19:02:14 dan Exp $
=head1 NAME
@@ -28,6 +28,7 @@
#define new_attrib_array() pmc_new(interpreter, enum_class_Array)
#define set_attrib_array_size(x, y) VTABLE_set_integer_native(interpreter, (x), (y))
#define resize_attrib_array(x, y) VTABLE_set_integer_native(interpreter, (x), (y))
+#define set_attrib_flags(x)
#define SLOTTYPE PMC
/* These are the new way, which isn't in yet
@@ -35,6 +36,7 @@
#define set_attrib_num(x, y, z) ((PMC *)PObj_bufstart(x))+y = z
#define get_attrib_count(x) (PObj_buflen(x) / sizeof(PMC *))
#define new_attrib_array() new_buffer_header(interpreter)
+#define set_attrib_flags(x) PObj_is_buffer_of_PMCs_ptr_set(x)
#define set_attrib_array_size(x, y) Parrot_allocate_zeroed(interpreter, x,
(sizeof(PMC *)*(y)))
#define resize_attrib_array(x, y) Parrot_reallocate(interpreter, x, (sizeof(PMC
*)*(y)))
#define SLOTTYPE Buffer
@@ -261,6 +263,7 @@
/* Hang an array off the data pointer */
child_class_array = PMC_data(child_class) =
new_attrib_array();
+ set_attrib_flags(child_class_array);
/* We will have five entries in this array */
set_attrib_array_size(child_class_array, PCD_MAX);
@@ -344,6 +347,7 @@
/* Hang an array off the data pointer, empty of course */
class_array = PMC_data(class) = new_attrib_array();
+ set_attrib_flags(class_array);
/* We will have five entries in this array */
set_attrib_array_size(class_array, PCD_MAX);
/* Our parent class array has nothing in it */
@@ -521,6 +525,7 @@
/* Build the array that hangs off the new object */
new_object_array = new_attrib_array();
+ set_attrib_flags(new_object_array);
/* Presize it */
set_attrib_array_size(new_object_array,
attrib_count + POD_FIRST_ATTRIB);