gcc/gcc ChangeLog.objc-improvements c-common.h ...
zlaski@gcc.gnu.org
zlaski@gcc.gnu.org
Wed Jun 23 19:43:00 GMT 2004
CVSROOT: /cvs/gcc
Module name: gcc
Branch: objc-improvements-branch
Changes by: zlaski@gcc.gnu.org 2004-06-23 19:43:56
Modified files:
gcc : ChangeLog.objc-improvements c-common.h
c-parse.in c-typeck.c expr.c stub-objc.c
gcc/cp : ChangeLog.objc-improvements parser.c
gcc/objc : ChangeLog.objc-improvements objc-act.c
objc-act.h
gcc/objcp : ChangeLog.objc-improvements lang-specs.h
objcp-decl.c
gcc/testsuite : ChangeLog.objc-improvements
gcc/testsuite/objc/execute: next_mapping.h
gcc/testsuite/objc.dg: bitfield-2.m id-1.m
Added files:
gcc/testsuite/obj-c++.dg: qual-types-1.mm template-4.mm
va-meth-1.mm
gcc/testsuite/objc.dg: va-meth-1.m
Log message:
[gcc/ChangeLog.objc-improvements]
2004-06-23 Ziemowit Laski <zlaski@apple.com>
* c-common.h (objc_is_id, objc_get_protocol_qualified_type): New
prototypes.
(objc_method_ellipsis, objc_get_static_reference,
objc_get_object_reference, objc_continue_method_definition):
Remove prototypes.
* c-parse.in (optparms, optellipsis): New nonterminals.
(myparms, myparm, myxdecls, mydecls, mydecl, optarglist): Remove.
(typespec_nonreserved_nonattr): Call objc_get_protocol_qualified_type()
instead of objc_get_static_reference() or objc_get_object_reference().
* c-typeck.c (build_c_cast): Preserve the NOP_EXPR when casting
to an Objective-C type.
* expr.c (categorize_ctor_elements_1): Check for presence of
designated initializer before checking its TREE_CODE.
* stub_objc.c (objc_is_id, objc_get_protocol_qualified_type): New
stub functions.
(objc_method_ellipsis, objc_get_static_reference,
objc_get_object_reference, objc_continue_method_definition):
Remove stub functions.
[gcc/cp/ChangeLog.objc-improvements]
2004-06-23 Ziemowit Laski <zlaski@apple.com>
* parser.c (cp_parser_objc_protocol_refs): Add missing prototype.
(cp_parser_simple_type_specifier): Attempt to parse type name
as a protocol-qualified Objective-C type, if preceding efforts
failed.
(cp_parser_objc_method_tail_params_opt): Fix handling of variable
arguments to methods.
(cp_parser_objc_method_definition_list): Do not call
objc_continue_method_definition().
[gcc/objc/ChangeLog.objc-improvements]
2004-06-23 Ziemowit Laski <zlaski@apple.com>
* objc-act.c (TYPE_ID): Rename to OBJECT_TYPEDEF_NAME.
(CLASS_TYPEDEF_NAME): New.
(objc_init): Do not initialize objc_ellipsis_node.
(objc_method_ellipsis): Remove.
(objc_get_static_reference, objc_get_object_reference): Removed,
replaced by...
(objc_get_protocol_qualified_type): ... this function; the 'id' and
'Class' types no longer need to be defined in a header.
(synth_module_prologue): Predefine 'id' and 'Class' as typedefs; rename
'temp_type' to 'type'.
(id_type, objc_id_id): Rename to objc_object_type and objc_object_name,
respectively.
(objc_class_type, objc_class_name, objc_class_reference): New.
(objc_build_constructor): Remove initializer element conversions;
tweak Objective-C++ impedance matching.
(add_objc_string): Cast return value to 'char *'.
(objc_is_id): New function.
(objc_is_object_ptr): Return the canonical type node.
(generate_ivar_lists): Convert one of the initializer elements.
(get_arg_type_list, start_method_def, gen_method_def): Account for
new representation of variable arguments and '...' in Objective-C
methods; add Objective-C++ impedance matching code.
(objc_finish_message_expr): Call objc_is_id() instead of using
IS_ID and IS_CLASS; Use objc_class_name instead of calling
get_identifier("Class").
(really_start_method): Initialize SELF_DECL here, and not in
start_method_def.
(objc_continue_method_definition): Remove.
(is_complex_decl): Use objc_is_id() instead of IS_ID.
* objc-act.h (OCTI_ELLIPSIS_NODE, objc_ellipsis_node): Remove.
(OCTI_ID_ID, id_type, objc_id_id): Rename to OCTI_ID_NAME,
objc_object_type and objc_object_name, respectively.
(OCTI_CLS_REF, OCTI_CLASS_NAME, objc_class_reference,
objc_class_name): New.
[gcc/objcp/ChangeLog.objc-improvements]
2004-06-23 Ziemowit Laski <zlaski@apple.com>
* lang-specs.h: Add missing initializer, analogously to
cp/lang-specs.h.
* objcp-decl.c (objcp_get_parm_info): Adjust call to
finish_parmlist().
[gcc/testsuite/ChangeLog.objc-improvements]
2004-06-23 Ziemowit Laski <zlaski@apple.com>
* objc/execute/next_mapping.h: Include stdlib.h and string.h.
(MIN, MAX, ROUND): Redefine macros to be C/C++-agnostic.
(__small_struct): New typedef.
(STRUCTURE_SIZE_BOUNDARY): Use __small_struct instead of an inline
struct definition.
(arglist_t): Provide a union tag.
(objc_aligned_size): Add missing prototype.
(objc_sizeof_type): Use sizeof(char) in place of sizeof(void);
remove extraneous break statements.
(objc_alignof_type, objc_skip_typespec): Remove extraneous break
statements.
* objc.dg/bitfield-2.m: Make 'id' definition a typedef.
* objc.dg/id-1.m: Attempt to define 'id' in an incompatible fashion.
* objc.dg/va-meth-1.m: New test case.
* obj-c++.dg/qual-types-1.mm: New test case.
* obj-c++.dg/template-4.mm: New test case.
* obj-c++.dg/va-meth-1.mm: New test case.
Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.objc-improvements.diff?cvsroot=gcc&only_with_tag=objc-improvements-branch&r1=1.1.2.2&r2=1.1.2.3
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/c-common.h.diff?cvsroot=gcc&only_with_tag=objc-improvements-branch&r1=1.189.2.16&r2=1.189.2.17
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/c-parse.in.diff?cvsroot=gcc&only_with_tag=objc-improvements-branch&r1=1.170.2.12&r2=1.170.2.13
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/c-typeck.c.diff?cvsroot=gcc&only_with_tag=objc-improvements-branch&r1=1.242.2.13&r2=1.242.2.14
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/expr.c.diff?cvsroot=gcc&only_with_tag=objc-improvements-branch&r1=1.567.2.12&r2=1.567.2.13
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/stub-objc.c.diff?cvsroot=gcc&only_with_tag=objc-improvements-branch&r1=1.1.2.4&r2=1.1.2.5
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/ChangeLog.objc-improvements.diff?cvsroot=gcc&only_with_tag=objc-improvements-branch&r1=1.1.2.3&r2=1.1.2.4
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/parser.c.diff?cvsroot=gcc&only_with_tag=objc-improvements-branch&r1=1.77.2.17&r2=1.77.2.18
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/objc/ChangeLog.objc-improvements.diff?cvsroot=gcc&only_with_tag=objc-improvements-branch&r1=1.1.2.4&r2=1.1.2.5
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/objc/objc-act.c.diff?cvsroot=gcc&only_with_tag=objc-improvements-branch&r1=1.179.2.27&r2=1.179.2.28
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/objc/objc-act.h.diff?cvsroot=gcc&only_with_tag=objc-improvements-branch&r1=1.16.4.9&r2=1.16.4.10
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/objcp/ChangeLog.objc-improvements.diff?cvsroot=gcc&only_with_tag=objc-improvements-branch&r1=1.1.2.3&r2=1.1.2.4
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/objcp/lang-specs.h.diff?cvsroot=gcc&only_with_tag=objc-improvements-branch&r1=1.1.2.4&r2=1.1.2.5
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/objcp/objcp-decl.c.diff?cvsroot=gcc&only_with_tag=objc-improvements-branch&r1=1.1.2.4&r2=1.1.2.5
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.objc-improvements.diff?cvsroot=gcc&only_with_tag=objc-improvements-branch&r1=1.1.2.5&r2=1.1.2.6
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/obj-c++.dg/qual-types-1.mm.diff?cvsroot=gcc&only_with_tag=objc-improvements-branch&r1=NONE&r2=1.1.2.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/obj-c++.dg/template-4.mm.diff?cvsroot=gcc&only_with_tag=objc-improvements-branch&r1=NONE&r2=1.1.2.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/obj-c++.dg/va-meth-1.mm.diff?cvsroot=gcc&only_with_tag=objc-improvements-branch&r1=NONE&r2=1.1.2.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/objc/execute/next_mapping.h.diff?cvsroot=gcc&only_with_tag=objc-improvements-branch&r1=1.1.2.4&r2=1.1.2.5
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/objc.dg/va-meth-1.m.diff?cvsroot=gcc&only_with_tag=objc-improvements-branch&r1=NONE&r2=1.1.2.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/objc.dg/bitfield-2.m.diff?cvsroot=gcc&only_with_tag=objc-improvements-branch&r1=1.2.18.1&r2=1.2.18.2
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/objc.dg/id-1.m.diff?cvsroot=gcc&only_with_tag=objc-improvements-branch&r1=1.2&r2=1.2.52.1
More information about the Gcc-cvs
mailing list