OSDN Git Service

* objc-act.c (build_next_objc_exception_stuff): Give setjmp a
[pf3gnuchains/gcc-fork.git] / gcc / objc / ChangeLog
1 2010-06-01  Nathan Froyd  <froydnj@codesourcery.com>
2
3         * objc-act.c (build_next_objc_exception_stuff): Give setjmp a
4         varargs type instead of a zero-argument type.
5
6 2010-05-30  Nathan Froyd  <froydnj@codesourcery.com>
7
8         * objc-act.c (synth_module_prologue): Use build_function_type_list
9         instead of build_function_type.
10         (build_module_initializer_routine): Likewise.
11         (build_next_objc_exception_stuff): Likewise.
12         (build_objc_exception_stuff): Likewise.
13
14 2010-05-27  Joseph Myers  <joseph@codesourcery.com>
15
16         * objc-act.c: Include diagnostic-core.h instead of diagnostic.h.
17         * Make-lang.in (objc/objc-act.o): Update dependencies.
18
19 2010-05-25  Steven Bosscher  <steven@gcc.gnu.org>
20
21         * objc-act.h: Do not include gimple.h.
22         * objc-act.c: Do not include rtl.h, expr.h, libfuncs.h, and tm_p.h.
23         Include gimple.h.  Explain why except.h has to be included.
24         * objc-lang.c: Do not include diagnostics.h.
25         * Make-lang.in: Update dependencies.
26
27 2010-05-25  Nathan Froyd  <froydnj@codesourcery.com>
28
29         * objc-act.c (objc_build_constructor): Adjust OBJCPLUS impedance
30         mismatch code for VECs.
31
32 2010-05-25  Nathan Froyd  <froydnj@codesourcery.com>
33
34         * objc-act.c (objc_build_constructor): Take a VEC instead of a tree.
35         Use build_constructor instead of build_constructor_from_list.
36         (objc_build_string_object): Build a VEC argument for
37         objc_build_constructor.
38         (init_def_list): Likewise.
39         (init_objc_symtab): Likewise.
40         (init_module_descriptor): Likewise.
41         (generate_static_references): Likewise.
42         (build_selector_translation_table): Likewise.
43         (build_descriptor_table_initializer): Likewise.
44         (generate_descriptor_table): Likewise.
45         (build_protocol_initializer): Likewise.
46         (build_ivar_list_initializer): Likewise.
47         (generate_ivars_list): Likewise.
48         (build_dispatch_table_initializer): Likewise.
49         (generate_dispatch_table): Likewise.
50         (generate_protocol_list): Likewise.
51         (build_category_initializer): Likewise.
52         (build_shared_structure_initializer): Likewise.
53         (generate_objc_image_info): Likewise.
54
55 2010-04-30  Iain Sandoe  <iains@gcc.gnu.org>
56
57         PR objc++/32052
58         * objc-act.c (encode_aggregate_within): Encode structure tags
59         with template args for ObjC++.
60
61 2010-04-30  Steven Bosscher  <steven@gcc.gnu.org>
62
63         * objc-act.c: Do not include varray.h.
64
65 2010-04-07  Jakub Jelinek  <jakub@redhat.com>
66
67         PR c/18624
68         * objc-act.c (finish_var_decl, objc_begin_catch_clause,
69         really_start_method, get_super_receiver, handle_class_ref): Set
70         DECL_READ_P in addition to TREE_USED.
71
72 2010-04-07  Iain Sandoe <iains@gcc.gnu.org>
73
74         PR objc/35996
75         * objc-act.c (objc_init): Warn that -fobjc-gc is ignored for
76         -fgnu-runtime and set flag_objc_gc to zero.
77
78 2010-04-07  Iain Sandoe <iains@gcc.gnu.org>
79
80         PR objc++/23716
81         * objc-act.c (build_module_initializer_routine): Make the argument
82         to objc_start_function NULL_TREE when compiling ObjC++.
83
84 2010-02-18  Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk>
85             Mike Stump  <mikestump@comcast.net>
86
87         PR objc/43061
88         * objc-act.c (finish_var_decl): Set the generated symbols as "used".
89
90 2009-12-17  Shujing Zhao  <pearly.zhao@oracle.com>
91
92         * objc-act.c (objc_substitute_decl, build_ivar_reference,
93         get_super_receiver): Update build_indirect_ref calls.
94
95 2009-11-28  Jakub Jelinek  <jakub@redhat.com>
96
97         * objc-act.c (generate_shared_structures): Remove unused sc_spec and
98         decl_specs variables.
99         (objc_build_message_expr): Remove unused loc variable.
100         (objc_finish_message_expr): Remove unused saved_rtype variable.
101         (encode_field_decl): Remove unused type variable.
102
103         PR obj-c++/42156
104         * objc-act.c (objc_build_struct): INIT_TYPE_OBJC_INFO for
105         type variants that don't have it initialized yet.
106
107 2009-09-14  Jan Hubicka  <jh@suse.cz>
108
109         * objc-act.c (objc_add_static_instance): Do not set DECL_COMMON.
110
111 2009-09-14  Richard Henderson  <rth@redhat.com>
112
113         * objc-act.c (objc_init_exceptions): Don't call
114         default_init_unwind_resume_libfunc.
115         (objc_build_exc_ptr): Use __builtin_eh_pointer.
116
117 2009-09-13  Richard Guenther  <rguenther@suse.de>
118         Rafael Avila de Espindola  <espindola@google.com>
119
120         * objc-act.c (objc_eh_runtime_type): Export.
121         (objc_init_exceptions): Remove.  Move warning code ...
122         (objc_begin_try_stmt): ... here
123         (objc_build_throw_stmt): ... and here.
124         (objc_eh_personality_decl): New.
125         (objc_eh_personality): New function.
126         * objc-act.h (objc_eh_runtime_type): Declare.
127         (objc_eh_personality): Likewise.
128         * objc-lang.c (LANG_HOOKS_EH_RUNTIME_TYPE): Define.
129         (LANG_HOOKS_EH_PERSONALITY): Likewise.
130
131 2009-09-03  Diego Novillo  <dnovillo@google.com>
132
133         * objc-lang.c (lang_hooks): Remove const qualifier.
134
135 2009-08-20  Richard Guenther  <rguenther@suse.de>
136
137         * objc-act.c: Include c-lang.h
138         * Make-lang.in (objc/objc-act.o): Add c-lang.h dependency.
139
140 2009-07-17  Aldy Hernandez  <aldyh@redhat.com>
141             Manuel López-Ibáñez  <manu@gcc.gnu.org>
142
143         PR 40435 
144         * objc-act.c: Add location argument to all calls to
145         build_fold_addr_expr.
146         
147 2009-07-14  Taras Glek  <tglek@mozilla.com>
148             Rafael Espindola  <espindola@google.com>
149
150         * Make-lang.in (objc.install-plugin): New target for
151         installing plugin headers.
152
153 2009-07-07  Manuel López-Ibáñez  <manu@gcc.gnu.org>
154
155         * objc-act.c (next_sjlj_build_catch_list): Replace EXPR_LOCUS by
156         EXPR_LOCATION.
157         
158 2009-07-07  Manuel López-Ibáñez  <manu@gcc.gnu.org>
159
160         * objc-act.c: Replace %J by an explicit location. Update all
161         calls.
162         
163 2009-07-07  Manuel López-Ibáñez  <manu@gcc.gnu.org>
164
165         * objc-act.c: Replace %H by an explicit location. Update all
166         calls.
167         
168 2009-06-22  Steven Bosscher  <steven@gcc.gnu.org>
169
170         PR objc/28050
171         * objc-act.c (objc_build_message_args): Return if ARGS is the
172         error_mark_node.
173         
174 2009-06-19  Ian Lance Taylor  <iant@google.com>
175
176         * objc-act.c (objc_in_struct, objc_struct_types): Remove.
177         (objc_struct_info): New static variable.
178         (objc_start_struct): Pass &objc_struct_info, not &objc_in_struct
179         and &objc_struct_types, to start_struct.
180         (objc_finish_struct): Likewise for finish_struct.
181
182 2009-06-15  Ian Lance Taylor  <iant@google.com>
183
184         * objc-act.c (objc_start_function): Don't set
185         label_context_stack_se or label_context_stack_vm.
186
187 2009-06-12  Aldy Hernandez  <aldyh@redhat.com>
188         
189         * objc-act.c (finish_var_decl): Pass location to finish_decl.
190         (objc_get_parm_info): Same.
191         (get_super_receiver): Same.
192         * objc-act.c (objc_build_component_ref): Pass location to
193         build_compound_ref.
194         (build_module_initializer_routine): Pass location to
195         c_end_compound_stmt.
196         (objc_generate_static_init_call): Pass location to build_stmt.
197         (build_typed_selector_reference): New location argument.
198         (build_selector_reference): Same.
199         (objc_substitute_decl): Pass location to build_array_ref.
200         (next_sjlj_build_try_catch_finally): Pass location to build_stmt.
201         (objc_begin_catch_clause): Same.
202         (objc_finish_try_stmt): Same.
203         (objc_finish_catch_clause): Pass location to c_end_compound_stmt.
204         (objc_build_throw_stmt): New argument.
205         (generate_shared_structures): Pass location to build_c_cast.
206         (objc_build_message_expr): Use local location.
207         (objc_finish_message_expr): Use input_location.
208         (build_objc_method_call): New argument.
209         (objc_build_selector_expr): Same.
210         (get_super_receiver): Pass location to build_c_cast,
211         build_modify_expr, build_compound_expr.
212         * objc-act.c: Add location to all calls to start_struct, build_decl,
213         finish_struct.
214         
215 2009-06-09  Ian Lance Taylor  <iant@google.com>
216
217         * objc-act.c (objc_gimplify_expr): Change return type to int.
218         * objc-act.h: Update declaration.
219
220 2009-06-08  Alexandre Oliva  <aoliva@redhat.com>
221
222         * objc-act.c (objc_init): Skip print_struct_values during
223         -fcompare-debug-second.
224
225 2009-06-03  Ian Lance Taylor  <iant@google.com>
226
227         * Make-lang.in (cc1obj-checksum.o): Depend upon $(CONFIG_H) and
228         $(SYSTEM_H).
229
230 2009-05-27  Ian Lance Taylor  <iant@google.com>
231
232         * Make-lang.in (cc1obj-dummy$(exeext)): Change $(COMPILER) to
233         $(LINKER).
234         (cc1obj$(exeext)): Likewise.
235
236 2009-05-26  Ian Lance Taylor  <iant@google.com>
237
238         * Make-lang.in (cc1obj-dummy$(exeext)): Use $(COMPILER).
239         (cc1obj$(exeext)): Likewise.
240
241 2009-05-20  Ian Lance Taylor  <iant@google.com>
242
243         * objc-act.c (objc_generate_cxx_ctor_or_dtor): Pass NULL rather
244         than NULL_TREE to build_special_member_call.
245
246 2009-05-10  Ian Lance Taylor  <iant@google.com>
247
248         * objc-act.c (objc_building_struct): New static variable.
249         (objc_in_struct, objc_struct_types): New static variables.
250         (objc_start_struct, objc_finish_struct): New static functions.
251         (generate_struct_by_value_array): Call objc_start_struct instead
252         of start_struct, and call objc_finish_struct instead of
253         finish_struct.
254         (objc_build_struct, build_objc_symtab_template): Likewise.
255         (build_module_descriptor): Likewise.
256         (build_next_objc_exception_stuff): Likewise.
257         (build_protocol_template): Likewise.
258         (build_method_prototype_list_template): Likewise.
259         (build_method_prototype_template): Likewise.
260         (build_category_template, build_selector_template): Likewise.
261         (build_class_template, build_super_template): Likewise.
262         (build_ivar_template, build_ivar_list_template): Likewise.
263         (build_method_list_template): Likewise.
264         (build_method_template): Likewise.
265
266 2009-05-10  Joseph Myers  <joseph@codesourcery.com>
267
268         * objc-act.c: Include intl.h.
269         (objc_lookup_protocol): Use complete sentences for diagnostics
270         with %qE for identifiers and translating results of
271         gen_type_name_0 to locale character set.
272         (objc_check_decl, check_protocol_recursively,
273         lookup_and_install_protocols, objc_build_string_object,
274         objc_get_class_reference, objc_declare_alias, objc_declare_class,
275         objc_get_class_ivars, error_with_ivar, check_duplicates,
276         objc_finish_message_expr, objc_build_protocol_expr,
277         objc_build_selector_expr, build_ivar_reference, objc_add_method,
278         add_category, add_instance_variable, objc_is_public,
279         check_methods, check_methods_accessible, check_protocol,
280         start_class, finish_class, start_protocol, really_start_method,
281         get_super_receiver, objc_lookup_ivar): Use %E and %qE for
282         identifiers in diagnostics.  Translate generated text to locale
283         character set as needed.
284         (check_protocol, check_protocols): Change name parameter to type
285         tree.
286         (lang_report_error_function): Remove.
287
288 2009-04-27  Ian Lance Taylor  <iant@google.com>
289
290         * objc-act.c (objc_gimplify_expr): Add casts to enum type.
291
292 2009-04-24  Ian Lance Taylor  <iant@google.com>
293
294         * objc-act.c (get_super_receiver): Update calls to
295         build_modify_expr to pass new argument.
296
297 2009-04-21  Taras Glek <tglek@mozilla.com>
298
299         * objc-act.c: Update GTY annotations to new syntax
300         * objc-act.h: Likewise
301
302 2009-04-21  Joseph Myers  <joseph@codesourcery.com>
303
304         * ChangeLog: Add copyright and license notices.
305
306 2009-04-20  Ian Lance Taylor  <iant@google.com>
307
308         * objc-act.c (objc_rewrite_function_call): Change parameter from
309         params to first_param.  Change all callers.
310
311 2009-03-30  Dominique d'Humieres  <dominiq@lps.ens.fr>
312
313         PR bootstrap/39583
314         * objc-act.c (in_late_binary_op): Define for Objective-C++.
315
316 2009-03-29  Joseph Myers  <joseph@codesourcery.com>
317
318         PR c/456
319         PR c/5675
320         PR c/19976
321         PR c/29116
322         PR c/31871
323         PR c/35198
324         * objc-act.c (objc_finish_try_stmt): Set in_late_binary_op.
325
326 2008-12-05  Sebastian Pop  <sebastian.pop@amd.com>
327
328         PR bootstrap/38262
329         * Make-lang.in (cc1obj-dummy, cc1obj): Add BACKENDLIBS,
330         remove GMPLIBS.
331
332 2008-10-06  Aldy Hernandez  <aldyh@redhat.com>
333
334         * objc-act.c (objc_build_string_object): Pass location to
335         build_unary_op.
336         (init_def_list): Same.
337         (init_objc_symtab): Same.
338         (init_module_descriptor): Same.
339         (build_module_initializer_routine): Same.
340         (generate_static_references): Same.
341         (build_typed_selector_reference): Same.
342         (add_objc_string): Same.
343         (objc_substitute_decl): Same.
344         (objc_build_ivar_assignment): Same.
345         (objc_build_global_assignment): Same.
346         (objc_build_strong_cast_assignment): Same.
347         (generate_protocols): Same.
348         (build_protocol_initializer): Same.
349         (build_dispatch_table_initializer): Same.
350         (generate_protocol_list): Same.
351         (build_category_initializer): Same.
352         (build_shared_structure_initializer): Same.
353         (generate_shared_structures): Same.
354         (objc_build_protocol_expr): Same.
355         (build_ivar_reference): Same.
356         (get_super_receiver): Same.
357
358 2008-09-23  Aldy Hernandez  <aldyh@redhat.com>
359
360         * objc-act.c (next_sjlj_build_enter_and_setjmp): Call
361         c_common_truthvalue_conversion with location.
362         (next_sjlj_build_catch_list): Same.
363         (next_sjlj_build_try_catch_finally): Same.
364
365 2008-09-17  Andrew Pinski  <andrew_pinski@playstation.sony.com>
366
367         PR objc/37460
368         * objc-lang.c (LANG_HOOKS_GET_CALLEE_FNDECL): Don't define.
369         * objc-act.h (objc_get_callee_fndecl): Remove prototype.
370         * objc-act.c (objc_get_callee_fndecl): Kill.
371
372 2008-09-17  Jan Hubicka  <jh@suse.cz>
373
374         PR c++/18071
375         * objc/objc-act.c (objc_finish_method_definition): Do not set
376         DECL_INLINE.
377
378 2008-09-01  Aldy Hernandez  <aldyh@redhat.com>
379
380         * objc-act.c (build_typed_selector_reference): Pass input_location to
381         build_unary_op calls.
382         (build_selector_reference): Same, but to build_array_ref.
383         (objc_substitute_decl): Same.
384         (build_ivar_reference): Same, but to build_indirect_ref.
385         (get_super_receiver): Same.
386
387 2008-07-28  Richard Guenther  <rguenther@suse.de>
388
389         Merge from gimple-tuples-branch.
390
391         2008-07-18  Aldy Hernandez  <aldyh@redhat.com>
392
393         * Make-lang.in (objc-lang.o): Depend on GIMPLE_H.
394         (objc-act.o): Rename TREE_GIMPLE_H to GIMPLE_H.
395         * objc-act.h: Include gimple.h instead of tree-gimple.h.
396         * ipa-reference.c: Same.
397
398         2007-11-10  Aldy Hernandez  <aldyh@redhat.com>
399
400         * objc-act.c (objc_gimplify_expr): Change pre and post to sequences.
401         * objc-act.h (objc_gimplify_expr): Change prototype accordingly.
402
403 2008-07-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
404
405         * objc-act.c: Fix comment typos.
406
407 2008-07-18  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
408
409         * objc-act.c (objc_start_class_interface,
410         objc_start_category_interface, objc_start_class_implementation,
411         objc_start_category_implementation, objc_build_struct,
412         generate_static_references, build_private_template,
413         lookup_category, objc_add_method, add_category,
414         add_instance_variable, objc_is_public, conforms_to_protocol,
415         start_class, continue_class, finish_class): Avoid C++ keywords.
416
417 2008-07-14  Jason Merrill  <jason@redhat.com>
418
419         PR objc++/36723
420         * objc-act.c (objc_build_constructor): Update C++ tweak.
421
422 2007-07-14  Rafael Ávila de Espíndola  <espindola@google.com>
423
424         * objc-act.c (synth_module_prologue): Use TREE_NO_WARNING instead
425         of DECL_IN_SYSTEM_HEADER.
426
427 2008-07-11  Ian Lance Taylor  <iant@google.com>
428
429         * objc-act.c (objc_is_reserved_word): Always check for RID_CLASS,
430         etc., not just when OBJCPLUS is defined.
431
432 2008-06-19  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
433
434         * objc-act.c (setup_string_decl, objc_build_string_object,
435         hash_interface, eq_interface, objc_begin_try_stmt,
436         encode_method_prototype, build_ivar_list_initializer,
437         objc_build_encode_expr): Fix for -Wc++-compat.
438
439 2008-05-12  Tomas Bily  <tbily@suse.cz>
440
441         * objc-act.c (objc_generate_write_barrier, objc_finish_message_expr):
442         Use CONVERT_EXPR_P.
443
444 2008-04-23  Paolo Bonzini  <bonzini@gnu.org>
445
446         * objc-act.c (objc_build_string_object): Don't set TREE_INVARIANT.
447
448 2008-04-03  Tom Tromey  <tromey@redhat.com>
449
450         * Make-lang.in (objc_OBJS): New variable.
451
452 2008-03-27  Tom Tromey  <tromey@redhat.com>
453
454         * Make-lang.in: Revert automatic dependency patch.
455
456 2008-03-27  Douglas Gregor  <doug.gregor@gmail.com>
457
458         PR obj-c++/35704
459         * objc-act.c (objc_build_component_ref): Fix call to
460         finish_class_member_access_expr.
461         (objc_generate_cxx_ctor_or_dtor): Fix call to
462         build_special_member_call.
463
464 2008-03-25  Andrew Pinski  <pinskia@gmail.com>
465
466         PR objc/29197
467         * objc-act.c (encode_type): Handle when type is error_mark_node.
468         (objc_push_parm): Handle when the type of parm is error_mark_node.
469
470 2008-03-25  Tom Tromey  <tromey@redhat.com>
471
472         * Make-lang.in (objc_OBJS): New variable.
473         (cc1obj-checksum.o, objc/objc-lang.o, objc/objc-act.o): Remove.
474
475 2008-03-21  Andreas Tobler  <a.tobler@schweiz.org>
476
477         PR bootstrap/35660
478         * objc-act.c (objc_generate_cxx_ctor_or_dtor): Rename IS_AGGR_TYPE to
479         MAYBE_CLASS_TYPE_P.
480         (objc_generate_cxx_cdtors): Likewise.
481         (add_instance_variable): Likewise.
482
483 2008-02-26  Tom Tromey  <tromey@redhat.com>
484
485         * objc-act.c (objc_init): Remove old location code.
486
487 2008-02-06  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
488
489         PR other/35107
490         * Make-lang.in (cc1obj-dummy, cc1obj): Add $(GMPLIBS).
491
492 2007-07-30  Nick Clifton  <nickc@redhat.com>
493
494         * Make-lang.in: Change copyright header to refer to version 3 of
495         the GNU General Public License and to point readers at the
496         COPYING3 file and the FSF's license web page.
497         * lang-specs.h, objc-act.c, objc-tree.def, objc-act.h,
498         config-lang.in, objc-lang.c: Likewise.
499
500 2007-07-29  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
501
502         * objc-act.c (objc_get_callee_fndecl): Constify.
503         * objc-act.h (objc_get_callee_fndecl): Likewise.
504
505 2007-07-25  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
506
507         * objc-act.c (volatilized_hash, volatilized_eq, string_hash,
508         string_eq): Constify.
509
510 2007-04-04  Stuart Hastings  <stuart@apple.com>
511
512         PR 31281
513         * objc/objc-act.c (next_sjlj_build_catch_list): Delete volatile from rethrow decl.
514
515 2007-03-01  Brooks Moses  <brooks.moses@codesourcery.com>
516
517         * Make-lang.in: Add dummy lang.install-pdf target.
518
519 2007-02-18  Kazu Hirata  <kazu@codesourcery.com>
520
521         * objc/objc-act.c: Fix comment typos.
522
523 2007-02-15  Sandra Loosemore  <sandra@codesourcery.com>
524             Brooks Moses  <brooks.moses@codesourcery.com>
525             Lee Millward  <lee.millward@codesourcery.com>
526
527         * objc-act.c (receiver_is_class_object): Use new CALL_EXPR accessors.
528         (objc_get_callee_fndecl): Likewise.
529
530 2007-01-23  Andrew Pinski  <pinskia@gmail.com>
531
532         PR objc/27438
533         * objc-act.c (objc_add_static_instance): Mark the decl as
534         TREE_USED.
535
536 2007-01-20  Andrew Pinski  <pinskia@gmail.com>
537
538         PR objc/30479
539         * objc-act.c (hash_interface): Use IDENTIFIER_HASH_VALUE instead
540         of htab_hash_pointer.
541         (lookup_interface): Likewise.
542         (add_class): Likewise.
543
544 2007-01-02  Douglas Gregor  <doug.gregor@gmail.com>
545         
546         * objc-act.c (objc_build_volatilized_type): Keep track of
547         canonical types.
548         (objc_get_protocol_qualified_type): Ditto.
549         
550 2006-11-02  Andreas Tobler  <a.tobler@schweiz.org>
551
552         * objc-act.c (objc_finish_file): Remove ifdef clause for OBJCPLUS and
553         content where we called cp_finish_file.
554
555 2006-10-23 Rafael Ávila de Espíndola  <rafael.espindola@gmail.com>
556
557         * objc-act.c (synth_module_prologue): Replace calls to
558         builtin_function with add_builtin_function.
559         (build_next_objc_exception_stuff): Replace calls to
560         builtin_function with add_builtin_function.
561         (build_objc_exception_stuff): Replace calls to
562         builtin_function with add_builtin_function.
563
564 2006-10-10  Brooks Moses  <bmoses@stanford.edu>
565
566         * Make-lang.in: Added empty "objc.pdf" target.
567
568 2006-09-26  Andrew Pinski  <pinskia@physics.uc.edu>
569
570         PR objc/29195
571         * objc-act.c (objc_push_parm): If we change the type of the
572         decl, relayout the decl.
573
574 2006-09-19  Eric Christopher  <echristo@apple.com>
575
576         * objc-act.c (JBLEN): Rename to OBJC_JBLEN,
577         default to something innocuous.
578         (build_next_objc_exception_stuff): Rename JBLEN.
579
580 2006-07-28  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
581
582         * Make-lang.in: Use $(HEADER_H) instead of header.h in dependencies.
583
584 2006-07-19  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
585
586         PR obj-c++/28434
587         * objc-act.c (lookup_and_install_protocols): Skip error_mark_nodes.
588
589 2006-06-06  Mike Stump  <mrs@apple.com>
590
591         * objc-act.c: Remove prototype for objc_build_volatilized_type.
592
593 2006-05-24  Mike Stump  <mrs@apple.com>
594
595         * objc-act.c (build_next_objc_exception_stuff): Use JBLEN instead of _JBLEN.
596
597 2006-05-05  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
598
599         PR objc/27240
600         * objc-act.c (objc_is_public): Return early on invalid type.
601
602 2006-03-02 Fariborz Jahanian <fjahanian@apple.com>
603
604         * objc-act.c (init_module_descriptor): Remove file name from
605         module descriptor.
606         (gen_type_name_0): Fix ICE when issuing warning.
607
608 2006-02-20 Rafael Ávila de Espíndola <rafael.espindola@gmail.com>
609         * Make-lang.in (OBJC): Remove
610         (OBJECTIVE-C): Remove
611         (objective-c): Remove
612         (.PHONY): Remove objective-c and ObjC
613
614 2005-12-14  Andrew Pinski  <pinskia@physics.uc.edu>
615
616         PR objc/25360
617         * objc/objc-act.c (encode_type): Encode Complex types as 'j' followed
618         by the inner type.
619
620 2005-12-12  Andrew Pinski  <pinskia@physics.uc.edu>
621
622         PR objc/25348
623         * objc-act.c (encode_array): Handle arrays to zero sized types.
624
625 2005-12-07  Rafael Ávila de Espíndola  <rafael.espindola@gmail.com>
626
627         * Make-lang.in (objc.all.build, objc.install-normal): Remove.
628
629 2005-12-07  Rafael Ávila de Espíndola  <rafael.espindola@gmail.com>
630
631         * Make-lang.in: Remove all dependencies on s-gtype.
632
633 2005-12-02  Richard Guenther  <rguenther@suse.de>
634
635         * objc-act.c (objc_build_exc_ptr, next_sjlj_build_enter_and_setjmp
636         next_sjlj_build_exc_extract, next_sjlj_build_catch_list,
637         next_sjlj_build_try_catch_finally, objc_begin_catch_clause,
638         build_objc_method_call, objc_rewrite_function_call): Use buildN
639         instead of build.
640
641 2005-10-20  Geoffrey Keating  <geoffk@apple.com>
642
643         * objc-act.c (synth_module_prologue): Clear TREE_NOTHROW
644         on objc_msgSend and like builtin functions.
645
646 2005-10-17  Andreas Krebbel  <krebbel1@de.ibm.com>
647
648         * objc-act.c (objc_build_component_ref): Adjust call to
649         finish_class_member_access_expr due to a changed prototype.
650
651 2005-08-31  Andrew Pinski  <pinskia@physics.uc.edu>
652
653         PR objc/23306
654         * objc-act.c (generate_strings): Remove and move code to
655         finish decl to ...
656         (add_objc_string): here when creating a new string decl.
657         (finish_objc): Don't call generate_strings.
658
659 2005-08-31  Andrew Pinski  <pinskia@physics.uc.edu>
660
661         PR objc/23381
662         * objc-act.c (next_sjlj_build_try_catch_finally): Set
663         TREE_SIDE_EFFECTS on catch_seq after building it.
664
665 2005-08-09  Andrew Pinski  <pinskia@physics.uc.edu>
666
667         part of PR objc/21992
668         * objc-act.c (handle_class_ref): The ref decl is always referenced.
669
670 2005-07-20  Giovanni Bajo  <giovannibajo@libero.it>
671
672         Make CONSTRUCTOR use VEC to store initializers.
673         * objc-act.c (objc_build_constructor): Use build_constructor_from_list
674         instead of build_constructor.
675
676 2005-07-08  Daniel Berlin  <dberlin@dberlin.org>
677
678         * objc-act.c (objc_push_parm): DECL_ARG_TYPE_AS_WRITTEN is
679         removed.
680         * objc-act.h (KEYWORD_ARG_NAME): Use decl_non_common.
681         (KEYWORD_KEY_NAME): Use decl_minimal.
682         (METHOD_SEL_NAME): Ditto..
683         (METHOD_SEL_ARGS): Use decl_non_common.
684         (METHOD_ADD_ARGS): Ditto.
685         (METHOD_ADD_ARGS_ELLIPSIS_P): Use decl_common.
686         (METHOD_DEFINITION): Ditto.
687         (METHOD_ENCODING): Ditto.
688         * objc-lang.c: (objc_init_ts): New function.
689
690 2005-07-07  Ziemowit Laski  <zlaski@apple.com>
691
692         * objc-act.c (objc_build_struct): Pass in an actual @interface
693         instead of its name, and annotate the struct created (and all
694         existing variants thereof) with the @interface.
695         (objc_compare_types): Treat forward-declared ObjC classes
696         as stand-alone (root) classes for purposes of type comparisons.
697         (build_private_template): Move some code to objc_build_struct().
698
699 2005-07-07  Ziemowit Laski  <zlaski@apple.com>
700
701         PR objc/22274
702         * objc-act.c (objc_build_string_object): For GNU-style constants,
703         use the @interface type rather than the built-in type.
704
705 2005-07-03  Kazu Hirata  <kazu@codesourcery.com>
706
707         * Make-lang.in (cc1plus-checksum.c): Use
708         build/genchecksum$(build_exeext), not build/genchecksum$(exeext).
709
710 2005-07-02  Joseph S. Myers  <joseph@codesourcery.com>
711
712         * objc-act.c: Use %q to quote in diagnostics.
713
714 2005-07-02  Joseph S. Myers  <joseph@codesourcery.com>
715
716         * objc-act.c: Use '+' flag instead of %J.  Use 'q' flag for
717         quoting.
718
719 2005-06-30  Ziemowit Laski  <zlaski@apple.com>
720
721         * objc-act.c (objc_build_volatilized_type): New function.
722         (objc_volatilize_decl): Call objc_build_volatilized_type()
723         instead of build_qualified_type().
724
725 2005-06-29  Ziemowit Laski  <zlaski@apple.com>
726
727         * objc-act.c (objc_build_internal_const_str_type): New function.
728         (check_string_class_template): Use objc_get_class_ivars() instead
729         of TYPE_FIELDS() to retrieve ivar list.
730         (AT_LEAST_AS_LARGE_AS): Check the size of each field's type rather
731         than the field itself.
732         (objc_build_string_object): Synthesize a "__builtin_ObjCString"
733         type and use it to lay out compile-time string objects.
734         * objc-act.h (OCTI_INTERNAL_CNST_STR_TYPE, internal_const_str_type):
735         New.
736
737 2005-06-28  Paul Brook  <paul@codesourcery.com>
738
739         * objc-act.c (objc_init_exceptions): Call
740         default_init_unwind_resume_libfunc.
741
742 2005-06-27  Ziemowit Laski  <zlaski@apple.com>
743
744         * objc-act.c (objc_build_struct): Save the TYPE_OBJC_INFO
745         portion of TYPE_LANG_SPECIFIC info for all variants of
746         a class before calling finish_struct(), and restore
747         same TYPE_OBJC_INFO afterwards.
748
749 2005-06-25  Kelley Cook  <kcook@gcc.gnu.org>
750
751         * all files: Update FSF address in copyright headers.
752
753 2005-06-15  Joseph S. Myers  <joseph@codesourcery.com>
754
755         * objc-act.c (my_build_string_pointer): New.
756         (objc_get_class_reference, get_super_receiver): Call
757         my_build_string_pointer instead of my_build_string when building
758         function arguments.
759
760 2005-05-25  Mike Stump  <mrs@mrs.kithrup.com>
761
762         * objc-act.c (volatilized_hash): Avoid warnings on 64-bit
763         machines.
764
765 2005-05-24  Ziemowit Laski  <zlaski@apple.com>
766
767         * objc-act.c (objc_build_struct): New function.
768         (objc_derived_from_p): Likewise.
769         (objc_build_component_ref): Likewise.
770         (objc_copy_binfo): Likewise.
771         (objc_xref_basetypes): Likewise.
772         (objc_lookup_protocol): Likewise.
773         (objc_compare_protocols): Likewise.
774         (objc_volatilize_decl): Likewise.
775         (encode_aggregate_fields): Likewise.
776         (volatilized_hash): Likewise.
777         (volatilized_eq): Likewise.
778         (objc_compare_types): Likewise.
779         (objc_type_quals_match): Likewise.
780         (DERIVED_FROM_P): New ObjC macro, corresponding to C++ macro
781         of same name.
782         (get_class_ivars): Add second parameter indicating if entire
783         hierarchy is desired.
784         (struct volatilized_type): New type.
785         (volatilized_htab): New hash table.
786         (objc_types_compatible_p, objc_comptypes): Remove functions.
787         (synth_module_prologue): Do not initialize 'unused_list'.
788         (objc_get_class_reference): Fix ObjC++ impedance mismatches.
789         (objc_declare_alias): Implement as a typedef.
790         (objc_substitute_decl, objc_gimplify_expr): Reformat.
791         (objc_get_class_ivars): Adjust call to get_class_ivars().
792         (next_sjlj_build_enter_and_setjmp, synth_forward_declarations,
793         build_ivar_reference, get_super_receiver): Call
794         objc_build_component_ref() instead of build_component_ref().
795         (objc_begin_catch_clause): Use DERIVED_FROM_P() instead of
796         objc_comptypes().
797         (build_private_template): Call objc_build_struct() instead of
798         start_struct() and finish_struct().
799         (hash_init): Initialize volatilized_htab.
800         (objc_is_public): Adjust calls to objc_get_ivars(); adjust
801         ObjC++ impedance mismatches.
802         (encode_aggregate_within): Streamline by calling
803         encode_aggregate_fields().
804         * objc-act.h (objc_types_compatible_p): Remove prototype.
805         (OCTI_UNUSED_LIST, unused_list): Remove slot.
806         * objc-lang.c (LANG_HOOKS_TYPES_COMPATIBLE_P): Remove.
807
808 2005-05-18  Geoffrey Keating  <geoffk@apple.com>
809
810         * Make-lang.in (cc1obj-dummy): New.
811         (cc1obj-checksum.c): New.
812         (cc1obj-checksum.o): New.
813         (cc1obj): Add cc1obj-checksum.o.
814
815 2005-05-18  Mike Stump  <mrs@apple.com>
816
817         PR objc/21641
818         * objc-act.c (struct interface_tuple): Mark it up for GC.
819         (interface_htab): It is really a struct interface_tuple.
820
821 2005-05-17  Ziemowit Laski  <zlaski@apple.com>
822             Mike Stump  <mrs@apple.com>
823
824         Yet more Objective-C++...
825
826         * objc-act.c (objc_finish_try_stmt): Add return value.
827         (objc_build_synchronized): Likewise.
828
829         * objc-act.c (objc_is_gcable_type): Add.
830         (objc_substitute_decl): Add.
831         (objc_build_ivar_assignment): Add.
832         (objc_build_global_assignment): Add.
833         (objc_build_strong_cast_assignment): Add.
834         (objc_is_ivar_reference_p): Add.
835         (objc_is_global_reference_p): Add.
836         (objc_generate_write_barrier): Add.
837         (objc_rewrite_function_call): Add.
838         (objc_gimplify_expr): Add Objective-C++ support.
839         * objc-act.h (ALLOC_OBJC_TYPE_LANG_SPECIFIC): Likewise.
840         (SIZEOF_OBJC_TYPE_LANG_SPECIFIC): Add.
841         (INIT_TYPE_OBJC_INFO): Add Objective-C++ support.
842         (DUP_TYPE_OBJC_INFO): Likewise.
843         (struct imp_entry): Add field has_cxx_cdtors.
844         (struct imp_entry *imp_list): Add OCTI_UMSG_FAST_DECL,
845         OCTI_METH_LIST_TEMPL, OCTI_METH_PROTO_LIST_TEMPL,
846         OCTI_IVAR_LIST_TEMPL, OCTI_ASSIGN_IVAR_DECL,
847         OCTI_ASSIGN_IVAR_FAST_DECL, OCTI_ASSIGN_GLOBAL_DECL,
848         OCTI_ASSIGN_STRONGCAST_DECL.
849         (umsg_fast_decl): Add.
850         (objc_assign_ivar_decl): Add.
851         (objc_assign_ivar_fast_decl): Add.
852         (objc_assign_global_decl): Add.
853         (objc_assign_strong_cast_decl): Add.
854         (objc_method_list_ptr): Add.
855         (objc_method_proto_list_ptr): Add.
856         (objc_ivar_list_ptr): Add.
857
858         * objc-act.c (should_call_super_dealloc): Add.
859         (OBJC_VERSION): Bump to 6.
860         (objc_is_gcable_type): Add.
861         (objc_substitute_decl): Add.
862         (objc_build_ivar_assignment): Add.
863         (objc_build_global_assignment): Add.
864         (objc_build_strong_cast_assignment): Add.
865         (objc_is_gcable_p): Add.
866         (objc_is_ivar_reference_p): Add.
867         (objc_is_global_reference_p): Add.
868         (generate_shared_structures): Add flags parameter.
869         (objc_generate_cxx_ctor_or_dtor): Add.
870         (objc_generate_cxx_cdtors): Add.
871         (add_class): Add name parameter.
872         (objc_types_share_size_and_alignment): Add.
873         (comp_proto_with_proto): Add strict parameter.
874         (CLS_HAS_CXX_STRUCTORS): Add.
875         (TAG_ASSIGNIVAR): Add.
876         (TAG_ASSIGNGLOBAL): Add.
877         (TAG_ASSIGNSTRONGCAST): Add.
878         (TAG_MSGSEND_FAST): Add.
879         (TAG_ASSIGNIVAR_FAST): Add.
880         (TAG_CXX_CONSTRUCT): Add.
881         (TAG_CXX_DESTRUCT): Add.
882         (OBJC_LOOKUP_CLASS): Add.
883         (OBJC_LOOKUP_NO_SUPER): Add.
884         (objc_finish_file): Add pch support.
885         (objc_finish_implementation): Add Objective-C++ support.
886         (synth_module_prologue): Likewise.
887         (synth_module_prologue): Add fast dispatching.
888         (objc_get_class_reference): Add Objective-C++ support.
889         (objc_generate_write_barrier): Likewise.
890         (next_sjlj_build_enter_and_setjmp): Likewise.
891         (objc_begin_try_stmt): Likewise.
892         (build_next_objc_exception_stuff): Add fast ivar support.
893         (build_private_template): Mark the record as used so debug
894         information is generated.
895         (build_protocol_template): Add Objective-C++ support.
896         (objc_method_parm_type) Likewise.
897         (objc_generate_cxx_ctor_or_dtor): Likewise.
898         (objc_generate_cxx_cdtors): Likewise.
899         (build_protocol_initializer): Likewise.
900         (build_category_template): Likewise.
901         (build_class_template): Likewise.
902         (build_method_list_template): Likewise.
903         (build_category_initializer): Likewise.
904         (build_shared_structure_initializer): Likewise.
905         (objc_finish_message_expr): Likewise.
906         (build_objc_method_call): Add fast dispatch support.
907         (lookup_method_static): Add support to end search at superclasses.
908         (add_method_to_hash_list): Add strict parameter to
909         comp_proto_with_proto.
910         (objc_add_method): Likewise.
911         (objc_add_method): Also set the interface_value.
912         (add_instance_variable): Add Objective-C++ support.
913         (objc_is_public): Likewise.
914         (start_class): Likewise.
915         (continue_class): Likewise.
916         (encode_aggregate_within): Likewise.
917         (start_method_def): Likewise.
918         (objc_start_function): Clear current_function_returns_value
919         and current_function_returns_null.
920         (really_start_method): Add Objective-C++ support.
921         (objc_finish_method_definition): Add warning for missing
922         [super dealloc].
923         (finish_objc): Add Objective-C++ support.
924         (generate_objc_image_info): Likewise.
925         (objc_lookup_ivar): Likewise.
926         * objc-act.h (TYPE_HAS_OBJC_INFO): Likewise.
927         (INIT_TYPE_OBJC_INFO): Likewise.
928         (DUP_TYPE_OBJC_INFO): Likewise.
929
930 2005-04-23  DJ Delorie  <dj@redhat.com>
931
932         * objc-act.c: Adjust warning() callers.
933
934 2005-04-21  Roger Sayle  <roger@eyesopen.com>
935
936         * objc-act.h (METHOD_ADD_ARGS_ELLIPSIS_P): New macro for accessing
937         this field of an objc method decl.
938         * objc-act.c (build_method_decl): Take an additional "ellipsis"
939         argument, and set METHOD_ADD_ARGS_ELLIPSIS_P as appropriate.
940         (objc_build_method_signature): Accept additional "ellipsis"
941         argument and pass it to build_method_decl.
942         (get_arg_type_list, start_method_def, gen_method_decl): Use
943         the new METHOD_ADD_ARGS_ELLIPSIS_P instead of examining the
944         TREE_OVERFLOW field of a TREE_LIST node.
945
946 2005-04-20  Joseph S. Myers  <joseph@codesourcery.com>
947
948         PR c/12913
949         * objc-act.c (objc_start_function): Create stack level for context
950         of identifiers with variably modified type.
951
952 2005-03-30  Joseph S. Myers  <joseph@codesourcery.com>
953
954         PR c/772
955         PR c/17913
956         * objc-act.c (objc_start_function): Push context on
957         label_context_stack.
958
959 2005-03-23  Joseph S. Myers  <joseph@codesourcery.com>
960
961         * objc-act.c (next_sjlj_build_enter_and_setjmp,
962         next_sjlj_build_catch_list, next_sjlj_build_try_catch_finally):
963         Call c_common_truthvalue_conversion.
964
965 2005-02-25  Joseph S. Myers  <joseph@codesourcery.com>
966
967         * Make-lang.in (objc/objc-parse.o-warn, objc/objc-parse.o,
968         objc/objc-parse.c, objc/objc-parse.y): Remove
969         (OBJC_OBJS, objc.srcextra, objc.tags, objc.mostlyclean,
970         objc.distclean, objc.maintainer-clean): Update for new parser.
971         * config-lang.in (gtfiles): Update for new parser.
972
973 2005-01-29  Kazu Hirata  <kazu@cs.umass.edu>
974
975         * lang-specs.h, objc-act.c, objc-act.h, objc-lang.c: Update
976         copyright.
977
978 2005-01-27  Matt Austern  <austern@apple.com>
979
980         * objc-act.c (objc_finish_file): In ObjC++ mode, set at_eof before
981         calling instantiate_pending_templates.
982
983 2005-01-26  Alexander Malmberg  <alexander@malmberg.org>
984
985         PR objc/18862
986         * objc-act.c (build_selector_translation_table): Use
987         input_location in the diagnostic for the GNU runtime or if
988         TREE_PURPOSE (chain) is NULL.
989
990 2005-01-25  Alexander Malmberg  <alexander@malmberg.org>
991
992         PR objc/18408
993         * objc-act.c (objc_types_compatible_p): New function.
994         * objc-act.h (objc_types_compatible_p): Declare.
995         * objc-lang.c (LANG_HOOKS_TYPES_COMPATIBLE_P): Define.
996
997 2005-01-16  Ziemowit Laski  <zlaski@apple.com>
998
999         * objc-act.c (objc_push_parm): Call c_type_promotes_to()
1000         via a lang-hook.
1001
1002 2005-01-15  Ziemowit Laski  <zlaski@apple.com>
1003
1004         PR objc/19321
1005         * objc-act.c (get_arg_type_list): Decay function arguments into
1006         pointers.
1007         (objc_push_parm): Likewise; bring PARM_DECL construction closer
1008         in line with what the C front-end does.
1009         (objc_get_parm_info): Call pushdecl() and finish_decl() on
1010         each PARM_DECL, like the C front-end does.
1011         (start_method_def): Remove redundant ARRAY_TYPE decay.
1012         (objc_start_function): Bring closer in line with what the
1013         C front-end does for functions.
1014
1015 2005-01-14  Mike Stump  <mrs@apple.com>
1016
1017         * lang-specs.h ("@objective-c"): Use cc1obj when -E is used so
1018         that -fobjc-exceptions is accepted.
1019
1020 2004-12-30  Ziemowit Laski  <zlaski@apple.com>
1021
1022         PR objc/18971
1023         * objc-act.c (get_arg_type_list, start_method_def): Decay
1024         array arguments into pointers.
1025         (gen_type_name_0): Learn to pretty-print array types.
1026
1027 2004-12-15  Ziemowit Laski  <zlaski@apple.com>
1028
1029         * objc-act.c (build_private_template): Change to return 'void'; do
1030         not set ivar_context, uprivate_record or objc_instance_type.
1031         (objc_comptypes, gen_type_name_0): For types 'id' and 'Class',
1032         retrieve protocol list from the pointee rather than the pointer itself;
1033         check TYPE_HAS_OBJC_INFO(...) precondition before accessing
1034         TYPE_OBJC_PROTOCOL_LIST.
1035         (objc_get_protocol_qualified_type): For types 'id' and 'Class',
1036         construct a variant of the pointee as well as the pointer, and
1037         store protocol information in the former.  When creating variants
1038         of RECORD_TYPEs, clone their TYPE_LANG_SPECIFIC fields and propagate
1039         TYPE_OBJC_INTERFACE information.
1040         (objc_declare_class): If a TYPE_DECL is looked up, retrieve the
1041         underlying RECORD_TYPE to check for presence of TYPE_OBJC_INTERFACE;
1042         for newly-created RECORD_TYPEs, create a tentative TYPE_OBJC_INTERFACE
1043         holding an IDENTIFIER_NODE.
1044         (objc_finish_message_expr): Check TYPE_HAS_OBJC_INFO(...) before
1045         accessing TYPE_OBJC_PROTOCOL_LIST; Use TYPE_OBJC_INTERFACE instead
1046         of calling lookup_interface(); allow for TYPE_OBJC_INTERFACE holding
1047         an IDENTIFIER_NODE (meaning a @class forward-declaration only).
1048         (objc_is_public): Check TYPE_OBJC_INTERFACE instead of calling
1049         lookup_interface().
1050         (continue_class): For @implementations, set ivar_context,
1051         uprivate_record and objc_instance_type, for @interfaces, call
1052         build_private_template().
1053         (encode_pointer): Check TYPE_HAS_OBJC_INFO(...) before accessing
1054         TYPE_OBJC_INTERFACE.
1055         (objc_types_are_equivalent): Check TYPE_HAS_OBJC_INFO(...) before
1056         accessing TYPE_OBJC_PROTOCOL_LIST.
1057         * objc-act.h (OBJC_INFO_SLOT_ELTS, TYPE_OBJC_INFO, INIT_TYPE_OBJC_INFO,
1058         DUP_TYPE_OBJC_INFO, ALLOC_OBJC_TYPE_LANG_SPECIFIC,
1059         SIZEOF_OBJC_TYPE_LANG_SPECIFIC): New macros.
1060         (TYPE_OBJC_INTERFACE): Replaces TREE_STATIC_INSTANCE and now points
1061         to an actual @interface; stored in TYPE_LANG_SPECIFIC(...).
1062         (TYPE_OBJC_PROTOCOL_LIST): Replaces TYPE_PROTOCOL_LIST; stored in
1063         TYPE_LANG_SPECIFIC(...).
1064         (TREE_STATIC_INSTANCE, TYPE_PROTOCOL_LIST): Delete.
1065         (IS_ID, IS_CLASS, IS_PROTOCOL_QUALIFIED_UNTYPED, IS_SUPER,
1066         TYPED_OBJECT): Check for POINTER_TYPE rather than POINTER_TYPE_P;
1067         adjust for use of TYPE_OBJC_INTERFACE and TYPE_OBJC_PROTOCOL_LIST
1068         instead of TREE_STATIC_INSTANCE and TYPE_PROTOCOL_LIST.
1069
1070 2004-11-29  Joseph Myers  <joseph@codesourcery.com>
1071
1072         PR c/7544
1073         * Make-lang.in (objc/objc-act.o): Update dependencies.
1074         * objc-act.c (objc_finish_file): Call
1075         maybe_apply_pending_pragma_weaks if not OBJCPLUS.
1076
1077 2004-11-09  Andrew Pinski  <pinskia@physics.uc.edu>
1078
1079         PR objc/18406
1080         * obj-act.c (encode_type): 96bits doubles are encoded the
1081         same way as 64bit and 128bit doubles are.
1082
1083 2004-11-09  Joseph S. Myers  <joseph@codesourcery.com>
1084
1085         * objc-act.c: Use %q, %< and %> for quoting in diagnostics.
1086
1087 2004-11-08  Andrew Pinski  <pinskia@physics.uc.edu>
1088
1089         PR objc/16546
1090         * objc-act.c (generate_method_descriptors): Remove setting
1091         the new decls' type to variable_length_type.
1092         (generate_ivar_lists): Likewise.
1093         (generate_dispatch_tables): Likewise.
1094
1095 2004-10-30  Ziemowit Laski  <zlaski@apple.com>
1096
1097         * objc-act.c (objc_lookup_ivar): The new OTHER parameter
1098         contains the result of the ID lookup by the C or C++
1099         front-end; in class methods, use OTHER if it exists;
1100         in instance methods, use OTHER only if it is locally
1101         declared.
1102
1103 2004-10-26  Ziemowit Laski  <zlaski@apple.com>
1104
1105         * objc-act.c (finish_class): Do not synthesize bogus
1106         'extern objc_object *_Foo;' declarations for @interface Foo.
1107
1108 2004-10-25  Ziemowit Laski  <zlaski@apple.com>
1109             David Ayers  <d.ayers@inode.at>
1110
1111         * objc-act.c (objc_comptypes): Use IS_PROTOCOL_QUALIFIED_UNTYPED
1112         instead of IS_PROTOCOL_QUALIFIED_ID; add comparisons for:
1113         'Class <Protocol> != id <Protocol>'; 'Class <Protocol> != <class> *';
1114         'Class <Protocol> == id' and 'Class <Protocol> == Class'.
1115         (objc_is_id): Add test for 'super'.
1116         (objc_finish_message_expr): Allow for messaging of 'Class <Proto>'
1117         receivers; if class methods are not found in protocol lists, search
1118         for instance methods therein and warn if one is found.  Look in
1119         global hash tables for suitable method as a last resort when messaging
1120         'id <Proto>', 'Class <Proto>' and invalid receiver types.
1121         (objc_add_method): Insert instance methods listed in protocols into
1122         the global class method hash table.
1123         * objc-act.h (IS_PROTOCOL_QUALIFIED_ID): Rename to
1124         IS_PROTOCOL_QUALIFIED_UNTYPED and allow for 'Class <Proto>' in
1125         addition to 'id <Proto>'.
1126
1127 2004-10-21  Andrew Pinski  <pinskia@physics.uc.edu>
1128
1129         PR objc/17923
1130         * objc-act.c (objc_build_string_object): Create a CONST_DECL
1131         for the NeXT runtime case.
1132
1133 2004-10-02  Kazu Hirata  <kazu@cs.umass.edu>
1134
1135         * objc-act.c: Fix comment typos.
1136
1137 2004-09-24  Ziemowit Laski  <zlaski@apple.com>
1138
1139         * objc-act.c (init_objc_symtab, init_module_descriptor,
1140         build_shared_structure_initializer): When initializing 'long'
1141         fields, ensure that the initializer value is also 'long'.
1142
1143 2004-09-24  Zack Weinberg  <zack@codesourcery.com>
1144
1145         * objc-act.c: Change annotate_with_locus to SET_EXPR_LOCATION
1146         throughout.
1147         (objc_init): Only set input_line to 0 #ifndef USE_MAPPED_LOCATION.
1148         (build_selector_translation_table): Use %J in diagnostic
1149         instead of diddling input_line.  Fix spelling.
1150
1151 2004-09-21  Ziemowit Laski  <zlaski@apple.com>
1152
1153         * objc-act.c (objc_fold_objc_type_ref): New function.
1154         * objc-act.h (objc_fold_objc_type_ref): New prototype.
1155
1156 2004-09-09  Joseph S. Myers  <jsm@polyomino.org.uk>
1157
1158         * objc-act.c (objc_start_function, really_start_method,
1159         objc_get_parm_info, start_method_def): Update to new arg_info
1160         structures.
1161
1162 2004-09-07  Ziemowit Laski  <zlaski@apple.com>
1163
1164         * Make-lang.in (objc/objc-parse.o): Depend on $(C_COMMON_H) instead of
1165         objc/objc-act.h.
1166         (objc/objc-act.o): Depend on $(HASHTAB_H).
1167         * objc-act.c: Include hashtab.h; in ObjC++ mode, include cp-tree.h and
1168         objcp-decl.h instead of c-tree.h.
1169         (build_module_descriptor, get_class_ivars, synth_id_with_class_suffix,
1170         error_with_ivar, gen_method_decl, gen_declaration, setup_string_decl,
1171         build_protocol_template): Adjust prototypes.
1172         (build_module_initializer_routine, start_class, continue_class,
1173         finish_class, start_method_def, objc_start_function, start_protocol,
1174         build_method_decl, objc_add_method, add_instance_variable,
1175         build_ivar_reference, is_ivar, is_private, get_super_receiver,
1176         build_selector_table_decl, objc_push_parm, objc_get_parm_info,
1177         gen_type_name, gen_type_name_0, start_var_decl, finish_var_decl,
1178         create_field_decl): New prototypes.
1179         (objc_expand_function_end, comp_method_with_proto, objc_expr_last,
1180         gen_declaration_1, gen_declarator, is_complex_decl, adorn_decl,
1181         define_decl, create_builtin_decl, gen_declspecs): Remove prototypes.
1182         (TYPE_ID): Rename to OBJECT_TYPEDEF_NAME.
1183         (CLASS_TYPEDEF_NAME): New.
1184         (TAG_EXECCLASS): Change from a global variable to a #define.
1185         (TAG_RETURN_STRUCT): Delete.
1186         (TAG_GNUINIT): New, holds '__objc_gnu_init' name.
1187         (objc_inherit_code, objc_public_flag): New, moved from c-parse.in.
1188         (string_descriptor): New struct.
1189         (string_htab): New hash table.
1190         (string_hash, string_eq): New prototypes.
1191         (generate_struct_by_value_array): Call create_field_decl() instead of
1192         create_builtin_decl().
1193         (objc_init): Do not initialize objc_ellipsis_node or TAG_EXECCLASS;
1194         In ObjC++ mode, call cxx_init() instead of c_objc_common_init().
1195         (objc_finish_file): In ObjC++, call instantiate_pending_templates()
1196         and cp_finish_file().
1197         (define_decl, get_static_reference, get_protocol_reference,
1198         create_builtin_decl): Remove functions.
1199         (objc_start_class_interface, objc_start_category_interface,
1200         objc_start_protocol, objc_continue_interface, objc_finish_interface,
1201         objc_start_class_implementation, objc_start_category_implementation,
1202         objc_continue_implementation, objc_finish_implementation,
1203         objc_set_visibility, objc_set_method_type,
1204         objc_build_method_signature, objc_add_method_declaration,
1205         objc_start_method_definition, objc_add_instance_variable,
1206         objc_get_protocol_qualified_type, create_field_decl,
1207         start_var_decl, finish_var_decl): New functions.
1208         (setup_string_decl): Simplify since it is only called once.
1209         (synth_module_prologue): Call build_class_template(); predefine 'id'
1210         and 'Class' as typedefs; rename 'temp_type' to 'type'; disable debug
1211         hooks for duration of function; fix GNU runtime messenger signatures
1212         to correspond to reality; forward-declare '__objc_exec_class' for the
1213         GNU runtime; call build_selector_table_decl(); in ObjC++ mode, generate
1214         'extern "C" { ... }' wrappers around synthesized declarations; call
1215         build_protocol_template() and build_category_template().
1216         (string_hash, string_eq): New functions.
1217         (objc_build_string_object): Check metaclass correctness only once;
1218         store string literals in hash table.
1219         (objc_build_constructor): Do not convert initializer elements;
1220         adjust for ObjC++ impedance mismatch.
1221         (build_objc_symtab_template): Call create_field_decl() instead of
1222         create_builtin_decl().
1223         (init_objc_symtab): Add missing conversion to initializer element.
1224         (build_metadata_decl): Call start_var_decl() instead of define_decl().
1225         (generate_objc_symtab_decl): Do not call build_category_template();
1226         call start_var_decl() and finish_var_decl() instead of start_decl()
1227         and finish_decl().
1228         (build_module_descriptor): Call create_field_decl() instead of
1229         grokfield(); call start_var_decl() and finish_var_decl() instead of
1230         start_decl() and finish_decl(); always mark module descriptor as
1231         used; move GNU runtime-specific functionality to
1232         build_module_initializer_routine().
1233         (build_module_initializer_routine): New function, broken off of
1234         build_module_descriptor().
1235         (objc_static_init_needed_p, objc_generate_static_init_call): New
1236         functions.
1237         (generate_static_references, generate_strings,
1238         build_selector_translation_table, generate_descriptor_table,
1239         generate_ivars_list, generate_dispatch_table, generate_category): Call
1240         start_var_decl() and finish_var_decl() instead of start_decl() and
1241         finish_decl(); build a type directly instead of via groktypename().
1242         (build_selector_reference_decl, build_selector_table_decl,
1243         build_class_reference_decl, build_protocol_reference,
1244         generate_objc_image_info): Call start_var_decl() instead of
1245         build_decl().
1246         (build_selector_reference): For GNU runtime, do not call
1247         build_selector_reference_decl().
1248         (build_selector, build_typed_selector_reference): Always convert
1249         result to the selector type.
1250         (add_objc_string): Cast return value to 'char *'.
1251         (build_method_prototype_template, build_selector_template,
1252         build_method_template): Use actual selector type for fields
1253         pointing to selectors.
1254         (finish_objc): For GNU runtime, call
1255         build_module_initializer_routine() after build_module_descriptor().
1256         (generate_protocol_list, generate_shared_structures): Call
1257         start_var_decl() and finish_var_decl() instead of start_decl() and
1258         finish_decl(); build a type directly instead of via
1259         groktypename().
1260         (synth_id_with_class_suffix): Return a string.
1261         (get_arg_type_list): For instance methods, use the instance type for
1262         'self'; do not call groktypename_in_parm_context().
1263         (build_objc_string_decl): Squash redeclaration errors in ObjC++.
1264         (objc_is_class_name): Use OBJC_TYPE_NAME instead of TYPE_NAME;
1265         handle RECORD_TYPEs in ObjC as well as ObjC++.
1266         (objc_is_id): New function.
1267         (objc_is_object_ptr): Return the canonical type node.
1268         (objc_get_class_ivars): Simplify using get_class_ivars().
1269         (get_class_ivars): Remove second parameter; create a fresh copy
1270         of the ivar list for each call; do not check for existence of
1271         super class.
1272         (objc_eh_runtime_type): Mark #ifndef OBJCPLUS.
1273         (objc_init_exceptions): When using SJLJ-style exceptions, require
1274         the use of '-fobjc-exceptions' flag; do not require it for DWARF-style
1275         exceptions.
1276         (objc_build_exc_ptr, next_sjlj_build_try_catch_finally): Use
1277         objc_object_type instead of objc_id_type.
1278         (objc_begin_catch_clause): Convert the incoming PARM_DECL into
1279         a VAR_DECL before placing it in the appropriate scope; do not
1280         call define_decl(); adjust call to c_begin_compound_stmt();
1281         use objc_object_type instead of objc_id_type.
1282         (build_next_objc_exception_stuff): Call create_field_decl() instead
1283         of create_builtin_decl(); construct type directly instead of calling
1284         groktypename(); use OBJC_VOID_AT_END to mark end of function parameters.
1285         (build_private_template): Adjust call to get_class_ivars(); build
1286         a type directly instead of via groktypename().
1287         (build_protocol_template, build_method_prototype_list_template,
1288         build_method_prototype_template, build_category_template,
1289         build_selector_template, build_class_template, build_super_template,
1290         build_ivar_template, build_ivar_list_template,
1291         build_method_list_template, build_method_template):
1292         Call create_field_decl() instead of grokfield().
1293         (objc_method_parm_type): Do not call groktypename().
1294         (generate_descriptor_table): Call start_var_decl() and
1295         finish_var_decl() instead of start_decl() and finish_decl().
1296         (generate_method_descriptors, build_protocol_initializer,
1297         generate_dispatch_tables, build_category_initializer,
1298         build_shared_structure_initializer): Do not call groktypename().
1299         (generate_protocols): Call start_var_decl() and finish_var_decl()
1300         instead of start_decl() and finish_decl(); do not call groktypename().
1301         (error_with_ivar): Remove last parameter.
1302         (check_ivars): Do not iterate ovar CLASS_RAW_IVARS lists in addition
1303         to CLASS_IVARS lists; adjust calls to error_with_ivar().
1304         (generate_ivar_lists): Convert one of the initializer elements; do
1305         not call groktypename().
1306         (get_arg_type_list, start_method_def, gen_method_def): Account for
1307         new representation of variable arguments and '...' in Objective-C
1308         methods; add Objective-C++ impedance matching code.
1309         (is_objc_type_qualifier): Remove function.
1310         (adjust_type_for_id_default): Simplify; there is no longer a need to
1311         wade through declspecs.
1312         (lookup_interface, start_class, continue_class,
1313         finish_class, start_method_def, start_protocol, build_method_decl,
1314         objc_add_method, add_instance_variable, build_ivar_reference,
1315         is_ivar, is_private, get_super_receiver, objc_build_finally_epilogue):
1316         Make into static functions.
1317         (receiver_is_class_object): Use new IS_CLASS() macro.
1318         (objc_build_message_expr): Tweak ObjC++ message argument handling;
1319         call objc_finish_message_expr() instead of finish_message_expr().
1320         (finish_message_expr): Rename to objc_finish_message_expr(); use
1321         OBJC_TYPE_NAME and OBJC_SET_TYPE_NAME macros instead of TYPE_NAME.
1322         call gen_type_name() instead of gen_declaration(); call objc_is_id()
1323         instead of using IS_ID and IS_CLASS; Use objc_class_name instead of
1324         calling get_identifier("Class"); handle CONVERT_EXPRs in receiver.
1325         (build_objc_method_call, warn_with_method): Do not call groktypename().
1326         (build_ivar_reference): Call convert() instead of clobbering in a
1327         type.
1328         (hash_init): Initialize string_htab hash table.
1329         (add_instance_variable): Simplify parameter list; do not call grokfield();
1330         do not populate CLASS_IVARS list.
1331         (start_class): Check for the existence of super class, if one was specified.
1332         (continue_class): Use CLASS_RAW_IVARS rather than CLASS_IVARS; do not
1333         call build_class_template(); adjust call to get_class_ivars(); call
1334         build_decl(), pushdecl() and finish_decl() instead of define_decl().
1335         (finish_class): Call build_decl(), pushdecl() and finish_decl() instead
1336         of define_decl().
1337         (add_protocols): Use PROTOCOL_BINFO_ELTS for the tree vector size.
1338         (start_protocol): Do not call build_protocol_template(); use
1339         PROTOCOL_BINFO_ELTS for the tree vector size.
1340         (encode_type_qualifiers): Do not handle the 'const' qualifier here.
1341         (encode_pointer): Encode 'const char *' as 'r*', for backwards
1342         compatibility.
1343         (encode_array): Use HOST_WIDE_INT_PRINT_DEC instead of "%ld".
1344         (encode_type): Handle the 'const' qualifier here.
1345         (objc_parmlist): New global variable, sued by objc_push_parm and
1346         objc_get_parm_info().
1347         (objc_push_parm, objc_get_parm_info): New functions.
1348         (objc_expr_last): Remove function.
1349         (synth_self_and_ucmd_args): For instance methods, use the instance
1350         type for 'self'; call objc_push_parm() instead of push_parm_decl().
1351         (start_method_def): Do not call push_scope(), declare_parm_level(),
1352         pop_scope(), push_parm_decl(), store_parm_decls() or objc_expr_last();
1353         just use objc_push_parm() and objc_get_parm_info().
1354         (comp_method_with_proto): Remove function.
1355         (objc_types_are_equivalent): Strip away indirections before comparing
1356         underlying types.
1357         (comp_proto_with_proto): Do not call groktypename(); types are no
1358         longer in raw declspec format.
1359         (objc_start_function): New function.
1360         (really_start_method): Call comp_proto_with_proto() instead of
1361         comp_method_with_proto(); call objc_start_function() instead of
1362         hand-crafting a function declarator.
1363         (continue_method_def, objc_expand_function_end): Remove functions.
1364         (get_super_receiver): Call objc_get_current_scope() instead of
1365         get_current_scope(); reference 'super_class' field (instead of
1366         'class').
1367         (finish_method_def): Rename to objc_finish_method_definition() and
1368         add a function decl parameter; move method encoding call from
1369         objc_expand_function_end().
1370         (is_complex_decl, adorn_decl, gen_declarator, gen_declspecs,
1371         gen_declaration_1): Remove functions.
1372         (tmpbuf, RAW_DECLSPEC): Remove.
1373         (gen_declaration): Remove second parameter; simplify to deal
1374         with TYPE_P nodes instead of raw declspecs.
1375         (gen_type_name, gen_type_name_0): New functions.
1376         (gen_method_decl): Remove second parameter; call gen_type_name()
1377         instead of gen_declaration_1().
1378         (dump_interface): Adjust calls to gen_declaration() and
1379         gen_method_decl(); do not allocate a separate string buffer.
1380         (init_objc): Allocate a larger string buffer to accommodate
1381         dump_interface(); adjust call to build_module_descriptor();
1382         add call to build_module_initializer_routine() for the GNU
1383         runtime.
1384         (generate_classref_translation_entry): Do not call start_decl(); call
1385         finish_var_decl() instead of finish_decl(); call convert() instead of
1386         build_c_cast().
1387         * objc-act.h (CLASS_OWN_IVARS): Remove accessor.
1388         (CLASS_BINFO_ELTS): Reduce from 6 to 5, now that CLASS_OWN_IVARS is
1389         gone.
1390         (OCTI_GNU_INIT_DECL, GNU_INIT_decl): New.
1391         (OCTI_ELLIPSIS_NODE, objc_ellipsis_node): Remove.
1392         (OCTI_ID_ID, id_type, objc_id_id): Rename to OCTI_ID_NAME,
1393         objc_object_type and objc_object_name, respectively.
1394         (OCTI_CLS_REF, OCTI_CLASS_NAME, objc_class_reference,
1395         objc_class_name): New.
1396         (IS_CLASS): New macro.
1397         (IS_ID, IS_SUPER): Robustify.
1398         (OCTI_EXECCLASS_DECL, execclass_decl): New.
1399         (finish_file, start_class, continue_class, finish_class,
1400         start_method_def, continue_method_def, finish_method_def,
1401         start_protocol, finish_protocol, objc_build_throw_stmt,
1402         objc_build_try_catch_finally_stmt, objc_build_synchronized_prologue,
1403         objc_build_synchronized_epilogue, objc_build_try_prologue,
1404         objc_build_try_epilogue, objc_build_catch_stmt, objc_build_catch_epilogue,
1405         objc_build_finally_prologue, objc_build_finally_epilogue,
1406         is_ivar, is_private, is_public, add_instance_variable, objc_add_method,
1407         get_super_receiver, objc_clear_super_receiver, get_class_ivars_from_name,
1408         get_class_reference, get_static_reference, get_object_reference,
1409         build_message_expr, finish_message_expr, build_selector_expr,
1410         build_ivar_reference, build_keyword_decl, build_method_decl,
1411         build_protocol_expr, build_objc_string_object, objc_declare_alias,
1412         objc_declare_class, objc_declare_protocols, objc_comptypes,
1413         objc_check_decl, build_encode_expr): Remove prototypes.
1414         (imp_count, cat_count): Make GGC-aware.
1415         (OBJC_SET_TYPE_NAME): New macro.
1416
1417 2004-09-03  Ziemowit Laski  <zlaski@apple.com>
1418
1419         * config-lang.in: Update copyright notice.
1420         (lang_requires): Indicate that ObjC requires C to be built first.
1421
1422 2004-09-01  Ziemowit Laski  <zlaski@apple.com>
1423
1424         * objc-act.c (objc_check_decl): Use OBJC_TYPE_NAME macro instead of
1425         TYPE_NAME.
1426         (build_objc_string_object): Rename to objc_build_string_object().
1427         (get_class_reference): Rename to objc_get_class_reference().
1428         (get_class_ivars_from_name): Rename to objc_get_class_ivars().
1429         (next_sjlj_build_catch_list, get_super_receiver): Call
1430         objc_get_class_reference() instead of get_class_reference().
1431         (build_keyword_decl): Rename to objc_build_keyword_decl().
1432         (build_message_expr): Rename to objc_build_message_expr().
1433         (build_protocol_expr): Rename to objc_build_protocol_expr().
1434         (build_selector_expr): Rename to objc_build_selector_expr().
1435         (build_encode_expr): Rename to objc_build_encode_expr().
1436         * objc-act.h (get_class_ivars_from_name): Rename prototype to
1437         objc_get_class_ivars().
1438         (get_class_reference): Rename prototype to objc_get_class_reference().
1439         (build_message_expr): Rename prototype to objc_build_message_expr().
1440         (build_selector_expr): Rename prototype to objc_build_selector_expr().
1441         (build_keyword_decl): Rename prototype to objc_build_keyword_decl().
1442         (build_protocol_expr): Rename prototype to objc_build_prototype_expr().
1443         (build_objc_string_object): Rename prototype to
1444         objc_build_string_object().
1445
1446 2004-09-01  Ziemowit Laski  <zlaski@apple.com>
1447
1448         * objc-act.c (lookup_interface): Make function 'static' and add a
1449         local prototype.
1450         (objc_check_decl, get_class_reference, objc_declare_alias,
1451         objc_declare_class, objc_is_object_ptr): Call objc_is_class_name()
1452         instead of is_class_name().
1453         (get_super_receiver, objc_clear_super_receiver): Call
1454         objc_get_current_scope() instead of get_current_scope().
1455         (is_class_name): Rename to objc_is_class_name.
1456         (lookup_objc_ivar): Rename to objc_lookup_ivar.
1457
1458 2004-08-28  Ziemowit Laski  <zlaski@apple.com>
1459
1460         * objc-act.c (objc_is_reserved_word): New function.
1461
1462 2004-08-15  Ziemowit Laski  <zlaski@apple.com>
1463
1464         * Make-lang.in (objc/objc-lang.o): Depend on $(C_PRETTY_PRINT_H),
1465         $(DIAGNOSTIC_H), c-objc-common.h and gtype-objc.h, but not on toplev.h.
1466         (objc/objc-parse.o): Do not depend on gtype-objc.h.
1467         * objc-act.c: Do not include gtype-objc.h.
1468         (finish_file): Rename to objc_finish_file().
1469         * objc-act.h (finish_file): Update copyright notice; remove prototype.
1470         * objc-lang.c: Update copyright notice; include diagnostic.h,
1471         c-objc-common.h, c-pretty-print.h and gtype-objc.h; do not include
1472         toplev.h.
1473         (finish_file): New hook routine.
1474         (LANG_HOOKS_FINISH, LANG_HOOKS_INIT_OPTIONS,
1475         LANG_HOOKS_INITIALIZE_DIAGNOSTICS, LANG_HOOKS_HANDLE_OPTION,
1476         LANG_HOOKS_MISSING_ARGUMENT, LANG_HOOKS_POST_OPTIONS,
1477         LANG_HOOKS_GET_ALIAS_SET, LANG_HOOKS_SAFE_FROM_P,
1478         LANG_HOOKS_EXPAND_EXPR, LANG_HOOKS_MARK_ADDRESSABLE,
1479         LANG_HOOKS_PARSE_FILE, LANG_HOOKS_TRUTHVALUE_CONVERSION,
1480         LANG_HOOKS_FINISH_INCOMPLETE_DECL, LANG_HOOKS_UNSAFE_FOR_REEVAL,
1481         LANG_HOOKS_STATICP, LANG_HOOKS_SET_DECL_ASSEMBLER_NAME,
1482         LANG_HOOKS_NO_BODY_BLOCKS, LANG_HOOKS_WARN_UNUSED_GLOBAL_DECL,
1483         LANG_HOOKS_PRINT_IDENTIFIER, LANG_HOOKS_FUNCTION_ENTER_NESTED,
1484         LANG_HOOKS_FUNCTION_LEAVE_NESTED, LANG_HOOKS_DUP_LANG_SPECIFIC_DECL,
1485         LANG_HOOKS_DECL_UNINIT, LANG_HOOKS_RTL_EXPAND_STMT,
1486         LANG_HOOKS_COMMON_ATTRIBUTE_TABLE, LANG_HOOKS_FORMAT_ATTRIBUTE_TABLE,
1487         LANG_HOOKS_TREE_INLINING_CANNOT_INLINE_TREE_FN,
1488         LANG_HOOKS_TREE_INLINING_DISREGARD_INLINE_LIMITS,
1489         LANG_HOOKS_TREE_INLINING_ANON_AGGR_TYPE_P,
1490         LANG_HOOKS_TREE_INLINING_CONVERT_PARM_FOR_INLINING,
1491         LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS,
1492         LANG_HOOKS_TREE_DUMP_DUMP_TREE_FN,
1493         LANG_HOOKS_CALLGRAPH_EXPAND_FUNCTION, LANG_HOOKS_TYPE_FOR_MODE,
1494         LANG_HOOKS_TYPE_FOR_SIZE, LANG_HOOKS_SIGNED_TYPE,
1495         LANG_HOOKS_UNSIGNED_TYPE, LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE,
1496         LANG_HOOKS_INCOMPLETE_TYPE_ERROR, LANG_HOOKS_TYPE_PROMOTES_TO,
1497         LANG_HOOKS_REGISTER_BUILTIN_TYPE, LANG_HOOKS_WRITE_GLOBALS):
1498         Move to c-objc-common.h.
1499
1500 \f
1501 Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
1502
1503 Copying and distribution of this file, with or without modification,
1504 are permitted in any medium without royalty provided the copyright
1505 notice and this notice are preserved.