aboutsummaryrefslogtreecommitdiff
path: root/libobjc
diff options
context:
space:
mode:
Diffstat (limited to 'libobjc')
-rw-r--r--libobjc/ChangeLog6
-rw-r--r--libobjc/ivars.c2
-rw-r--r--libobjc/objc/runtime.h9
3 files changed, 11 insertions, 6 deletions
diff --git a/libobjc/ChangeLog b/libobjc/ChangeLog
index 7b3495a..2a9de96 100644
--- a/libobjc/ChangeLog
+++ b/libobjc/ChangeLog
@@ -1,5 +1,11 @@
2010-12-15 Nicola Pero <nicola.pero@meta-innovation.com>
+ * ivars.c (class_addIvar): Use the 'size' argument instead of
+ trying to calculate it using objc_sizeof_type().
+ * objc/runtime.h (class_addIvar): Updated comments.
+
+2010-12-15 Nicola Pero <nicola.pero@meta-innovation.com>
+
* sendmsg.c: Reindented some code and tidied up comments. No
actual code changes.
diff --git a/libobjc/ivars.c b/libobjc/ivars.c
index 69524bf..65de497 100644
--- a/libobjc/ivars.c
+++ b/libobjc/ivars.c
@@ -296,7 +296,7 @@ class_addIvar (Class class_, const char * ivar_name, size_t size,
else
ivar->ivar_offset = class_->instance_size - misalignment + alignment;
- class_->instance_size = ivar->ivar_offset + objc_sizeof_type (ivar->ivar_type);
+ class_->instance_size = ivar->ivar_offset + size;
}
return YES;
diff --git a/libobjc/objc/runtime.h b/libobjc/objc/runtime.h
index f5df691..94f5bf7 100644
--- a/libobjc/objc/runtime.h
+++ b/libobjc/objc/runtime.h
@@ -319,11 +319,10 @@ objc_EXPORT Ivar * class_copyIvarList (Class class_, unsigned int *numberOfRetur
instance variables to classes already registered with the runtime.
'size' is the size of the instance variable, 'alignment' the
alignment, and 'type' the type encoding of the variable type. You
- can use objc_sizeof_type() (or sizeof()), objc_alignof_type() (or
- __alignof__()) and @encode() to determine the right 'size',
- 'alignment' and 'type' for your instance variable. For example, to
- add an instance variable name "my_variable" and of type 'id', you
- can use:
+ can use sizeof(), __alignof__() and @encode() to determine the
+ right 'size', 'alignment' and 'type' for your instance variable.
+ For example, to add an instance variable name "my_variable" and of
+ type 'id', you can use:
class_addIvar (class, "my_variable", sizeof (id), __alignof__ (id),
@encode (id));