encoding.c (objc_layout_structure_next_member): Remove unused variable.

* encoding.c (objc_layout_structure_next_member): Remove unused
	variable.

From-SVN: r54406
This commit is contained in:
Andreas Jaeger 2002-06-09 18:46:01 +02:00
parent 309323c219
commit 42bac11688
2 changed files with 42 additions and 38 deletions

View File

@ -1,3 +1,8 @@
2002-06-09 Andreas Jaeger <aj@suse.de>
* encoding.c (objc_layout_structure_next_member): Remove unused
variable.
2002-05-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* Makefile.in (SHELL): Set to @SHELL@.
@ -181,14 +186,14 @@ Wed Jan 3 00:49:10 2001 Ovidiu Predescu <ovidiu@cup.hp.com>
function. This can alleviate problems __builtin_apply() and
friends have on various platforms. (Solution suggested by Helge
Hess.)
* objc/objc-api.h: Define __objc_msg_forward.
* sendmsg.c: Define gen_rtx_REG.
2000-12-06 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* thr-rtems.c: New file. Stub to compile.
* thr-rtems.c: New file. Stub to compile.
2000-09-06 Alexandre Oliva <aoliva@redhat.com>
@ -230,7 +235,7 @@ Sun Aug 6 22:51:16 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
Fri Jul 28 08:58:02 2000 Nicola Pero <nicola@brainstorm.co.uk>
* configure.in: Added libtool support; build shared libraries
* configure.in: Added libtool support; build shared libraries
if --enable-shared was passed on command line.
* Makefile.in: Modified most compilation commands to use libtool.
* aclocal.m4: New symbolic link to the ../libtool.m4, from the
@ -291,7 +296,7 @@ Tue Sep 21 07:47:10 1999 Jeffrey A Law (law@cygnus.com)
* Makefile.in (gc.o, gc_gc.o): Do not pass -fgnu-runtime to
the compiler when building C code.
Fri Aug 6 23:32:29 1999 Daniel Jacobowitz <drow@drow.them.org>
* Makefile.in (FLAGS_TO_PASS): Include prefix, exec_prefix,
@ -370,7 +375,7 @@ Sat Oct 17 05:21:31 1998 Ovidiu Predescu <ovidiu@slip.net>
Mon Oct 11 21:25:27 1998 Ovidiu Predescu <ovidiu@slip.net>
* encoding.c: Redefine get_inner_array_type to get the first entry
in the structure.
in the structure.
Thu Oct 8 12:21:14 1998 Richard Frith-Macdonald <richard@brainstorm.co.uk>
@ -435,4 +440,3 @@ Mon Sep 21 23:27:10 1998 Ovidiu Predescu <ovidiu@slip.net>
1998-09-21 Ben Elliston <bje@cygnus.com>
* New directory. Moved files from ../gcc/objc.

View File

@ -1,5 +1,6 @@
/* Encoding of types for Objective C.
Copyright (C) 1993, 1995, 1996, 1997, 1998, 2000 Free Software Foundation, Inc.
Copyright (C) 1993, 1995, 1996, 1997, 1998, 2000, 2002
Free Software Foundation, Inc.
Contributed by Kresten Krab Thorup
Bitfield support by Ovidiu Predescu
@ -85,7 +86,7 @@ static inline int
atoi (const char* str)
{
int res = 0;
while (isdigit (*str))
res *= 10, res += (*str++ - '0');
@ -93,7 +94,7 @@ atoi (const char* str)
}
/*
return the size of an object specified by type
return the size of an object specified by type
*/
int
@ -122,7 +123,7 @@ objc_sizeof_type (const char* type)
case _C_CHR:
return sizeof(char);
break;
case _C_UCHR:
return sizeof(unsigned char);
break;
@ -182,7 +183,7 @@ objc_sizeof_type (const char* type)
while (isdigit(*++type));
return len*objc_aligned_size (type);
}
break;
break;
case _C_BFLD:
{
@ -229,7 +230,7 @@ objc_sizeof_type (const char* type)
}
return max_size;
}
default:
{
objc_error(nil, OBJC_ERR_BAD_TYPE, "unknown type %s\n", type);
@ -240,7 +241,7 @@ objc_sizeof_type (const char* type)
/*
Return the alignment of an object specified by type
Return the alignment of an object specified by type
*/
int
@ -260,7 +261,7 @@ objc_alignof_type(const char* type)
case _C_CLASS:
return __alignof__(Class);
break;
case _C_SEL:
return __alignof__(SEL);
break;
@ -268,7 +269,7 @@ objc_alignof_type(const char* type)
case _C_CHR:
return __alignof__(char);
break;
case _C_UCHR:
return __alignof__(unsigned char);
break;
@ -389,7 +390,7 @@ objc_aligned_size (const char* type)
to be the size of a void*.
*/
int
int
objc_promoted_size (const char* type)
{
int size, wordsize;
@ -416,9 +417,9 @@ inline const char*
objc_skip_type_qualifiers (const char* type)
{
while (*type == _C_CONST
|| *type == _C_IN
|| *type == _C_IN
|| *type == _C_INOUT
|| *type == _C_OUT
|| *type == _C_OUT
|| *type == _C_BYCOPY
|| *type == _C_BYREF
|| *type == _C_ONEWAY
@ -429,13 +430,13 @@ objc_skip_type_qualifiers (const char* type)
return type;
}
/*
Skip one typespec element. If the typespec is prepended by type
qualifiers, these are skipped as well.
*/
const char*
const char*
objc_skip_typespec (const char* type)
{
/* Skip the variable name if any */
@ -446,7 +447,7 @@ objc_skip_typespec (const char* type)
}
type = objc_skip_type_qualifiers (type);
switch (*type) {
case _C_ID:
@ -485,7 +486,7 @@ objc_skip_typespec (const char* type)
case _C_ARY_B:
/* skip digits, typespec and closing ']' */
while(isdigit(*++type));
type = objc_skip_typespec(type);
if (*type == _C_ARY_E)
@ -504,23 +505,23 @@ objc_skip_typespec (const char* type)
case _C_STRUCT_B:
/* skip name, and elements until closing '}' */
while (*type != _C_STRUCT_E && *type++ != '=');
while (*type != _C_STRUCT_E) { type = objc_skip_typespec (type); }
return ++type;
case _C_UNION_B:
/* skip name, and elements until closing ')' */
while (*type != _C_UNION_E && *type++ != '=');
while (*type != _C_UNION_E) { type = objc_skip_typespec (type); }
return ++type;
case _C_PTR:
/* Just skip the following typespec */
return objc_skip_typespec (++type);
default:
{
objc_error(nil, OBJC_ERR_BAD_TYPE, "unknown type %s\n", type);
@ -533,7 +534,7 @@ objc_skip_typespec (const char* type)
Skip an offset as part of a method encoding. This is prepended by a
'+' if the argument is passed in registers.
*/
inline const char*
inline const char*
objc_skip_offset (const char* type)
{
if (*type == '+') type++;
@ -555,7 +556,7 @@ objc_skip_argspec (const char* type)
/*
Return the number of arguments that the method MTH expects.
Note that all methods need two implicit arguments `self' and
`_cmd'.
`_cmd'.
*/
int
method_get_number_of_arguments (struct objc_method* mth)
@ -588,7 +589,7 @@ method_get_sizeof_arguments (struct objc_method* mth)
the last argument. Typical use of this look like:
{
char *datum, *type;
char *datum, *type;
for (datum = method_get_first_argument (method, argframe, &type);
datum; datum = method_get_next_argument (argframe, &type))
{
@ -603,7 +604,7 @@ method_get_sizeof_arguments (struct objc_method* mth)
}
}
}
*/
*/
char*
method_get_next_argument (arglist_t argframe,
@ -624,14 +625,14 @@ method_get_next_argument (arglist_t argframe,
}
/*
Return a pointer to the value of the first argument of the method
Return a pointer to the value of the first argument of the method
described in M with the given argumentframe ARGFRAME. The type
is returned in TYPE. type must be passed to successive calls of
is returned in TYPE. type must be passed to successive calls of
method_get_next_argument.
*/
char*
method_get_first_argument (struct objc_method* m,
arglist_t argframe,
arglist_t argframe,
const char** type)
{
*type = m->method_types;
@ -641,12 +642,12 @@ method_get_first_argument (struct objc_method* m,
/*
Return a pointer to the ARGth argument of the method
M from the frame ARGFRAME. The type of the argument
is returned in the value-result argument TYPE
is returned in the value-result argument TYPE
*/
char*
method_get_nth_argument (struct objc_method* m,
arglist_t argframe, int arg,
arglist_t argframe, int arg,
const char **type)
{
const char* t = objc_skip_argspec (m->method_types);
@ -656,7 +657,7 @@ method_get_nth_argument (struct objc_method* m,
while (arg--)
t = objc_skip_argspec (t);
*type = t;
t = objc_skip_typespec (t);
@ -749,7 +750,6 @@ objc_layout_structure (const char *type,
BOOL
objc_layout_structure_next_member (struct objc_struct_layout *layout)
{
register int known_align = layout->record_size;
register int desired_align = 0;
/* The following are used only if the field is a bitfield */
@ -864,7 +864,7 @@ objc_layout_structure_next_member (struct objc_struct_layout *layout)
Bump the cumulative size to multiple of field alignment. */
layout->record_size = ROUND (layout->record_size, desired_align);
}
/* Jump to the next field in record. */
layout->prev_type = layout->type;