summaryrefslogtreecommitdiff
path: root/libobjc
diff options
context:
space:
mode:
authornicola <nicola@138bc75d-0d04-0410-961f-82ee72b054a4>2010-12-19 13:40:16 +0000
committernicola <nicola@138bc75d-0d04-0410-961f-82ee72b054a4>2010-12-19 13:40:16 +0000
commitbb681846a00f990c09d44a0b5303ba47efa12db3 (patch)
treecd479bee4a6e5fdacbb1bc51fc317ee5038c41ca /libobjc
parentd552de41caee46f559036d49f39eadb913993397 (diff)
downloadgcc-bb681846a00f990c09d44a0b5303ba47efa12db3.tar.gz
In libobjc/:
2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com> * objc/encoding.h: Updated comments. * objc/runtime.h: Updated comments. (objc_setGetUnknownClassHandler): Mark with objc_EXPORT. (objc_sizeof_type): Same. (objc_alignof_type): Same. (objc_aligned_size): Same. (objc_promoted_size): Same. (objc_skip_type_qualifiers): Same. (objc_skip_typespec): Same. (objc_skip_offset): Same. (objc_skip_argspec): Same. (objc_get_type_qualifiers): Same. (objc_layout_structure): Same. (objc_layout_structure_next_member): Same. (objc_layout_finish_structure): Same. (objc_layout_structure_get_info): Same. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@168051 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libobjc')
-rw-r--r--libobjc/ChangeLog19
-rw-r--r--libobjc/objc/encoding.h14
-rw-r--r--libobjc/objc/runtime.h41
3 files changed, 48 insertions, 26 deletions
diff --git a/libobjc/ChangeLog b/libobjc/ChangeLog
index 7335e27bac6..1bb60816b79 100644
--- a/libobjc/ChangeLog
+++ b/libobjc/ChangeLog
@@ -1,5 +1,24 @@
2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
+ * objc/encoding.h: Updated comments.
+ * objc/runtime.h: Updated comments.
+ (objc_setGetUnknownClassHandler): Mark with objc_EXPORT.
+ (objc_sizeof_type): Same.
+ (objc_alignof_type): Same.
+ (objc_aligned_size): Same.
+ (objc_promoted_size): Same.
+ (objc_skip_type_qualifiers): Same.
+ (objc_skip_typespec): Same.
+ (objc_skip_offset): Same.
+ (objc_skip_argspec): Same.
+ (objc_get_type_qualifiers): Same.
+ (objc_layout_structure): Same.
+ (objc_layout_structure_next_member): Same.
+ (objc_layout_finish_structure): Same.
+ (objc_layout_structure_get_info): Same.
+
+2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
+
* init.c: Updated comments.
* objc/objc-api.h: Updated comments.
* objc/runtime.h (_objc_load_callback): Declare.
diff --git a/libobjc/objc/encoding.h b/libobjc/objc/encoding.h
index 523b129f328..6d98a390aa3 100644
--- a/libobjc/objc/encoding.h
+++ b/libobjc/objc/encoding.h
@@ -31,8 +31,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
/* This file is to be used with the "traditional" GNU Objective-C
Runtime API (the one declared in objc/objc-api.h). If you are
using the "modern" GNU Objective-C Runtime API, then the useful
- functions from this file are declared in objc/runtime.h.
-*/
+ functions from this file are declared in objc/runtime.h. */
#include "objc-api.h"
#include <ctype.h>
@@ -71,9 +70,15 @@ const char *objc_skip_type_qualifiers (const char *type);
const char *objc_skip_typespec (const char *type);
const char *objc_skip_offset (const char *type);
const char *objc_skip_argspec (const char *type);
+unsigned objc_get_type_qualifiers (const char *type);
+
+/* The following functions are replaced, in the modern API, by
+ method_getNumberOfArguments(), method_getArgumentType(). */
int method_get_number_of_arguments (struct objc_method *);
int method_get_sizeof_arguments (struct objc_method *);
+/* The following functions are deprecated and they use arglist_t which
+ is deprecated. */
char *method_get_first_argument (struct objc_method *,
arglist_t argframe,
const char **type);
@@ -84,10 +89,7 @@ char *method_get_nth_argument (struct objc_method *m,
int arg,
const char **type);
-unsigned objc_get_type_qualifiers (const char *type);
-
-
-struct objc_struct_layout
+struct objc_struct_layout
{
const char *original_type;
const char *type;
diff --git a/libobjc/objc/runtime.h b/libobjc/objc/runtime.h
index de8f7016ba4..5f0274e109a 100644
--- a/libobjc/objc/runtime.h
+++ b/libobjc/objc/runtime.h
@@ -410,6 +410,7 @@ typedef Class (*objc_get_unknown_class_handler)(const char *class_name);
This function is not safe to call in a multi-threaded environment
because other threads may be trying to use the get unknown class
handler while you change it! */
+objc_EXPORT
objc_get_unknown_class_handler
objc_setGetUnknownClassHandler (objc_get_unknown_class_handler new_handler);
@@ -971,21 +972,21 @@ objc_EXPORT void objc_free(void *mem);
/* Return the size of a variable which has the specified 'type'
encoding. */
-int objc_sizeof_type (const char *type);
+objc_EXPORT int objc_sizeof_type (const char *type);
/* Return the align of a variable which has the specified 'type'
encoding. */
-int objc_alignof_type (const char *type);
+objc_EXPORT int objc_alignof_type (const char *type);
/* Return the aligned size of a variable which has the specified
'type' encoding. The aligned size is the size rounded up to the
nearest alignment. */
-int objc_aligned_size (const char *type);
+objc_EXPORT int objc_aligned_size (const char *type);
/* Return the promoted size of a variable which has the specified
'type' encoding. This is the size rounded up to the nearest
integral of the wordsize, taken to be the size of a void *. */
-int objc_promoted_size (const char *type);
+objc_EXPORT int objc_promoted_size (const char *type);
/* The following functions are used when parsing the type encoding of
@@ -998,30 +999,30 @@ int objc_promoted_size (const char *type);
/* Skip some type qualifiers (_C_CONST, _C_IN, etc). These may
eventually precede typespecs occurring in method prototype
encodings. */
-const char *objc_skip_type_qualifiers (const char *type);
+objc_EXPORT const char *objc_skip_type_qualifiers (const char *type);
/* Skip one typespec element (_C_CLASS, _C_SEL, etc). If the typespec
is prepended by type qualifiers, these are skipped as well. */
-const char *objc_skip_typespec (const char *type);
+objc_EXPORT const char *objc_skip_typespec (const char *type);
/* Skip an offset. */
-const char *objc_skip_offset (const char *type);
+objc_EXPORT const char *objc_skip_offset (const char *type);
/* Skip an argument specification (ie, skipping a typespec, which may
include qualifiers, and an offset too). */
-const char *objc_skip_argspec (const char *type);
+objc_EXPORT const char *objc_skip_argspec (const char *type);
/* Read type qualifiers (_C_CONST, _C_IN, etc) from string 'type'
(stopping at the first non-type qualifier found) and return an
unsigned int which is the logical OR of all the corresponding flags
(_F_CONST, _F_IN etc). */
-unsigned objc_get_type_qualifiers (const char *type);
+objc_EXPORT unsigned objc_get_type_qualifiers (const char *type);
/* Note that the following functions work for very simple structures,
but get easily confused by more complicated ones (for example,
- containing vectors). A better solution is required.
-*/
+ containing vectors). A better solution is required. These
+ functions are likely to change in the next GCC release. */
/* The following three functions can be used to determine how a
structure is laid out by the compiler. For example:
@@ -1054,16 +1055,16 @@ struct objc_struct_layout
unsigned int record_align;
};
-void objc_layout_structure (const char *type,
+objc_EXPORT void objc_layout_structure (const char *type,
struct objc_struct_layout *layout);
-BOOL objc_layout_structure_next_member (struct objc_struct_layout *layout);
-void objc_layout_finish_structure (struct objc_struct_layout *layout,
- unsigned int *size,
- unsigned int *align);
-void objc_layout_structure_get_info (struct objc_struct_layout *layout,
- unsigned int *offset,
- unsigned int *align,
- const char **type);
+objc_EXPORT BOOL objc_layout_structure_next_member (struct objc_struct_layout *layout);
+objc_EXPORT void objc_layout_finish_structure (struct objc_struct_layout *layout,
+ unsigned int *size,
+ unsigned int *align);
+objc_EXPORT void objc_layout_structure_get_info (struct objc_struct_layout *layout,
+ unsigned int *offset,
+ unsigned int *align,
+ const char **type);
#ifdef __cplusplus
}