OSDN Git Service

* config/mcore/mcore.c Don't include assert.h.
[pf3gnuchains/gcc-fork.git] / gcc / java / ChangeLog
1 2010-12-07  Joseph Myers  <joseph@codesourcery.com>
2
3         * jcf-parse.c: Don't include assert.h.
4         (java_parse_file): Use gcc_assert.
5
6 2010-12-03  Joseph Myers  <joseph@codesourcery.com>
7
8         * lang.opt (static-libgcj): New option.
9
10 2010-12-01  Joseph Myers  <joseph@codesourcery.com>
11
12         * jcf-parse.c: Don't include toplev.h.
13         * Make-lang.in (java/jcf-parse.o): Don't depend on toplev.h.
14
15 2010-11-30  Joseph Myers  <joseph@codesourcery.com>
16
17         * boehm.c: Don't include toplev.h.
18         * Make-lang.in (java/boehm.o): Don't depend on toplev.h.
19
20 2010-11-30  Joseph Myers  <joseph@codesourcery.com>
21
22         * expr.c, lang.c, mangle.c, mangle_name.c, typeck.c,
23         verify-glue.c: Don't include toplev.h.
24         * Make-lang.in: Dependencies for above files changed to remove
25         toplev.h.
26
27 2010-11-29  Joseph Myers  <joseph@codesourcery.com>
28
29         * boehm.c: Include "config.h" instead of <config.h>.
30         * builtins.c: Don't include <stdarg.h>.
31         * class.c: Don't include "stdio.h".
32         (O_BINARY): Don't define here.
33         * jcf-depend.c: Don't include <assert.h>.
34         (jcf_dependency_set_dep_file, jcf_dependency_init,
35         jcf_dependency_write): Use gcc_assert.
36         * jcf-io.c (O_BINARY): Don't define here.
37         * jcf-path.c: Don't include "tm.h".
38         (jcf_path_init): Use getenv instead of GET_ENVIRONMENT.
39         * resource.c: Don't include "stdio.h".
40         (O_BINARY): Don't define here.
41         * verify-impl.c: Don't include <stdio.h>.
42
43 2010-11-17  Joseph Myers  <joseph@codesourcery.com>
44
45         * jcf-parse.c (java_parse_file): Take no arguments.
46         * java-tree.h (java_parse_file): Update prototype.
47
48 2010-11-09  Joern Rennecke  <amylaar@spamcop.net>
49             Andrew Haley  <aph@redhat.com>
50
51         PR java/46386
52         * config/pdp11/t-pdp11 (java/constants.o-warn): Remove.
53
54 2010-11-12  Joseph Myers  <joseph@codesourcery.com>
55
56         * Make-lang.in (jvspec.o, java/lang.o): Use $(OPTS_H).
57         * lang.c (java_handle_option): Take location_t parameter.
58
59 2010-11-10  Joseph Myers  <joseph@codesourcery.com>
60
61         * expr.c (expand_java_field_op): Use %' in diagnostic.
62         * jcf-parse.c (java_parse_file): Use %' in diagnostics.
63         * jvspec.c (lang_specific_driver): Use %' in diagnostic.
64         * lang.c (java_post_options): Use %' in diagnostics.
65
66 2010-11-06  Joern Rennecke  <amylaar@spamcop.net>
67
68         PR middle-end/46314
69         * class.c: Include target.h.
70         (make_local_function_alias):
71         Use targetm.asm_out.generate_internal_label.
72         * expr.c (lookup_label, generate_name): Likewise.
73
74 2010-11-03  Joern Rennecke  <joern.rennecke@embecosm.com>
75
76         PR bootstrap/44335
77         * jfc-parse.c (target.h): Include.
78         (handle_constant): Use targetm.words_big_endian and
79         targetm.float_words_big_endian.
80         (get_constant): Use targetm.float_words_big_endian.
81
82 2010-10-13  Richard Henderson  <rth@redhat.com>
83
84         * lang.c (java_eh_personality): Update call to
85         build_personality_function.
86
87 2010-10-12  Joseph Myers  <joseph@codesourcery.com>
88
89         * Make-lang.in (java/lang.o): Use $(OPTIONS_H) instead of
90         options.h.
91
92 2010-10-11  Nathan Froyd  <froydnj@codesourcery.com>
93
94         * decl.c (java_init_decl_processing): Use build_function_type_list
95         instead of build_function_type.
96         * jcf-parse.c (java_emit_static_constructor): Likewise.
97         * builtins.c (initialize_builtins): Likewise.
98
99 2010-10-08  Joseph Myers  <joseph@codesourcery.com>
100
101         * lang.c (java_init_options_struct): New.  Split out from
102         java_init_options.
103         (LANG_HOOKS_INIT_OPTIONS_STRUCT): Define.
104
105 2010-10-04  Andi Kleen <ak@linux.intel.com>
106
107         * Make-lang.in (xgcj, jc1, jcf-dump, jvgenmain):
108         Add + to build rule.
109
110 2010-09-29  Joseph Myers  <joseph@codesourcery.com>
111
112         * lang.opt: Don't use VarExists.
113
114 2010-09-29  Joseph Myers  <joseph@codesourcery.com>
115
116         * java-tree.h (flag_filelist_file, flag_assert, flag_jni,
117         flag_force_classes_archive_check, flag_redundant, flag_newer,
118         flag_use_divide_subroutine, flag_use_atomic_builtins,
119         flag_use_boehm_gc, flag_hash_synchronization,
120         flag_check_references, flag_optimize_sci, flag_indirect_classes,
121         flag_indirect_dispatch, flag_store_check,
122         flag_reduced_reflection): Remove.
123         * jcf-dump.c (flag_newer): Remove.
124         * jcf.h (quiet_flag): Remove.
125         * parse.h (quiet_flag): Remove.
126
127 2010-09-28  Richard Henderson  <rth@redhat.com>
128
129         * lang.c: Include "target.h".
130         (java_eh_personality): Use targetm.except_unwind_info.
131         * Make-lang.in (lang.o): Update deps.
132
133 2010-09-27  Andrew Haley  <aph@redhat.com>
134
135         PR java/45773
136         * jvgenmain.c (main): Fix arg processing.
137
138 2010-09-22  Joseph Myers  <joseph@codesourcery.com>
139
140         * jvspec.c (lang_specific_driver): Handle OPT__help instead of
141         OPT_fhelp.
142         * lang.opt (-CLASSPATH, -all-warnings, -bootclasspath, -classpath,
143         -dependencies, -encoding, -extdirs, -include-directory,
144         -include-directory=, -output-class-directory,
145         -output-class-directory=, -resource, -resource=,
146         -user-dependencies): New.
147
148 2010-09-16  Richard Guenther  <rguenther@suse.de>
149
150         * jcf-parse.c (current_file_list): Remove.
151         (java_parse_file): Use build_translation_unit_decl.  Adjust.
152
153 2010-09-03  Joseph Myers  <joseph@codesourcery.com>
154
155         * lang.opt (d): New.
156
157 2010-09-03  H.J. Lu  <hongjiu.lu@intel.com>
158
159         PR java/45504
160         * jvgenmain.c (main): Check "-D XXX=YYY".
161
162 2010-09-02  Joseph Myers  <joseph@codesourcery.com>
163
164         * jvspec.c (jvgenmain_spec): Don't handle -fnew-verifier.
165
166 2010-09-02  Joseph Myers  <joseph@codesourcery.com>
167
168         * lang.opt (CLASSPATH, bootclasspath, classpath, encoding,
169         fCLASSPATH=): Mark as Java options and as aliases.
170         * jvspec.c (jvgenmain_spec): Don't handle -fCLASSPATH*.
171         (lang_specific_driver): Don't handle options marked as aliases.
172         * lang.c (java_handle_option): Don't handle OPT_fCLASSPATH_.
173
174 2010-08-22  Joseph Myers  <joseph@codesourcery.com>
175
176         * Make-lang.in (jvspec.o): Update dependencies.
177         * jvspec.c: Include opts.h.
178         (PARAM_ARG): Remove.
179         (find_spec_file): Do not add leading -specs=.
180         (lang_specific_driver): Use cl_decoded_option structures.
181         * lang.opt (C, CLASSPATH, D, bootclasspath, classpath, encoding,
182         extdirs, fmain=, s-bc-abi): New options.
183
184 2010-08-20  Nathan Froyd  <froydnj@codesourcery.com>
185
186         * class.c: Use FOR_EACH_VEC_ELT.
187         * expr.c: Likewise.
188         * jcf-parse.c: Likewise.
189         * resource.c: Likewise.
190
191 2010-08-16  Joseph Myers  <joseph@codesourcery.com>
192
193         * lang.opt (MD_, MMD_, version): Mark RejectDriver.
194
195 2010-08-05  David Daney  <ddaney@caviumnetworks.com>
196
197         * class.c (build_utf8_ref): Fix code formatting from previous commit.
198
199 2010-08-05  David Daney  <ddaney@caviumnetworks.com>
200
201         * class.c (build_utf8_ref): Make decl DECL_USER_ALIGN.
202
203 2010-07-27  Joseph Myers  <joseph@codesourcery.com>
204
205         * lang.c (java_handle_option): Update prototype and return value
206         type.
207
208 2010-07-27  Joseph Myers  <joseph@codesourcery.com>
209
210         * lang.c (java_option_lang_mask): New.
211         (java_init_options): Update prototype.
212         (LANG_HOOKS_OPTION_LANG_MASK): Define.
213
214 2010-07-15  Nathan Froyd  <froydnj@codesourcery.com>
215
216         * java-tree.h: Carefully replace TREE_CHAIN with DECL_CHAIN.
217         * boehm.c: Likewise.
218         * class.c: Likewise.
219         * decl.c: Likewise.
220         * expr.c: Likewise.
221         * jcf-parse.c: Likewise.
222         * typeck.c: Likewise.
223         * verify-glue.c: Likewise.
224
225 2010-07-08  Manuel López-Ibáñez  <manu@gcc.gnu.org>
226
227         * boehm.c: Include diagnostic-core.h in every file that includes
228         toplev.h.
229         * class.c: Likewise.
230         * constants.c: Likewise.
231         * decl.c: Likewise.
232         * except.c: Likewise.
233         * expr.c: Likewise.
234         * jcf-parse.c: Likewise.
235         * mangle.c: Likewise.
236         * mangle_name.c: Likewise.
237         * resource.c: Likewise.
238         * typeck.c: Likewise.
239         * verify-glue.c: Likewise.
240
241 2010-07-05  Nathan Froyd  <froydnj@codesourcery.com>
242
243         PR bootstrap/44825
244         * class.c (make_class_data): Cast result of VEC_length calls to int.
245
246 2010-07-05  Nathan Froyd  <froydnj@codesourcery.com>
247
248         * constants.c (build_constants_constructor): Use build_constructor
249         instead of build_constructor_from_list.
250         * class.c (make_method_value): Likewise.
251         (get_dispatch_table): Likewise.
252         (make_class_data): Likewise.
253         (emit_indirect_register_classes): Likewise.
254         (emit_symbol_table): Likewise.
255         (add_assertion_table_entry): Likewise.
256         (emit_assertion_table): Likewise.
257         (make_field_value): Use build_constructor_single instead of
258         build_constructor_from_list.
259
260 2010-06-28  Nathan Froyd  <froydnj@codesourcery.com>
261
262         * java-tree.h (struct lang_type) [catch_classes]: Change type to a
263         VEC.
264         * except.c (prepare_eh_table_type): Call CONSTRUCTOR_APPEND_ELT
265         instead of tree_cons.
266         * class.c (make_class): Add dummy entry to TYPE_CATCH_CLASSES.
267         (emit_catch_table): Adjust for new type of TYPE_CATCH_CLASSES.
268
269 2010-06-28  Steven Bosscher  <steven@gcc.gnu.org>
270
271         * lang.c: Do not include except.h
272         * except.c: Likewise.
273         (doing_eh): New, moved from except.c (in gcc/) but removed the
274         do_warning flag.
275         (maybe_start_try): Update doing_eh call.
276         * Make-lang.in: Update dependencies.
277
278 2010-06-23  Anatoly Sokolov  <aesok@post.ru>
279
280         * decl.c (java_init_decl_processing): Use double_int_to_tree instead
281         of build_int_cst_wide.
282         * boehm.c (set_bit): Remove.
283         (mark_reference_fields): Use double_int type for 'mask' argument.
284         Use double_int_setbit instead of set_bit.
285         (get_boehm_type_descriptor): Use double_int_setbit instead of
286         set_bit. Use double_int_to_tree instead of build_int_cst_wide.
287
288 2010-06-10  Gerald Pfeifer  <gerald@pfeifer.com>
289
290         * gcj.texi: Move to GFDL version 1.3.  Fix copyright years.
291
292 2010-06-08  Laurynas Biveinis  <laurynas.biveinis@gmail.com>
293
294         * jcf-reader.c (jcf_parse_constant_pool): Use typed GC allocation.
295
296         * jcf-parse.c (java_parse_file): Likewise.
297         (process_zip_dir): Likewise.
298
299         * java-tree.h (MAYBE_CREATE_VAR_LANG_DECL_SPECIFIC): Likewise.
300         (MAYBE_CREATE_TYPE_TYPE_LANG_SPECIFIC): Likewise.
301
302         * expr.c (add_type_assertion): Likewise.
303
304         * decl.c (make_binding_level): Likewise.
305         (java_dup_lang_specific_decl): Likewise.
306
307         * constants.c (set_constant_entry): Likewise.
308         (cpool_for_class): Likewise.
309
310         * class.c (add_method_1): Likewise.
311         (java_treetreehash_new): Likewise.
312
313         * java-tree.h (struct lang_type): Add variable_size GTY option.
314         (struct lang_decl): Likewise.
315
316         * jch.h (struct cpool_entry): Likewise.
317
318         * java-tree.h (java_treetreehash_create): Remove parameter ggc.
319
320         * except.c (prepare_eh_table_type): Update
321         java_treetreehash_create call.
322
323         * class.c (add_method_1): Update java_treetreehash_create call.
324         (java_treetreehash_create): Remove parameter gc.  Use
325         htab_create_ggc.
326
327 2010-06-04  Joseph Myers  <joseph@codesourcery.com>
328
329         * jvspec.c (lang_specific_driver): Use GCC-specific formats in
330         diagnostics.
331
332 2010-05-30  Steven Bosscher  <steven@gcc.gnu.org>
333
334         * except.c: Include tm.h.
335
336 2010-05-28  Joseph Myers  <joseph@codesourcery.com>
337
338         * jvspec.c (lang_specific_driver): Use fatal_error instead of
339         fatal.  Use warning instead of error for warnings.
340
341 2010-05-28  Nathan Froyd  <froydnj@codesourcery.com>
342
343         * expr.c (get_symbol_table_index): Add spaces in expression.
344
345 2010-05-28  Nathan Froyd  <froydnj@codesourcery.com>
346
347         * java-tree.h (method_entry): Declare.  Declare VECs containing it.
348         (struct lang_type): Change type of otable_methods, atable_methods, and
349         itable_methods to VECs.  Fix comment for atable_methods.
350         (emit_symbol_table): Take a VEC instead of a tree.
351         (get_symbol_table_index): Take a VEC * instead of a tree *.
352         * class.c (add_table_and_syms): Take a VEC instead of a tree.
353         (emit_symbol_table): Update for changed parameter type.
354         * expr.c (get_symbol_table_index): Likewise.
355
356 2010-05-27  Steven Bosscher  <steven@gcc.gnu.org>
357
358         * buildings.c: Pretend to be a backend file by undefining
359         IN_GCC_FRONTEND (still need rtl.h here).
360
361 2010-05-26  Nathan Froyd  <froydnj@codesourcery.com>
362
363         * java-tree.h (struct lang_decl_func): Change type of throws_list
364         field to a VEC.
365         * jcf-parse.c (HANDLE_EXCEPTIONS_ATTRIBUTE): Adjust for changed type
366         of DECL_FUNCTION_THROWS.
367         * class.c (make_method_value): Likewise.
368
369 2010-05-26  Nathan Froyd  <froydnj@codesourcery.com>
370
371         * class.c (utf8_decl_list): Delete.
372         (build_utf8_ref): Remove references to it.
373         * java-tree.h (all_class_list): Delete.
374         (predef_filenames): Delete.
375         (enum java_tree_index) [JTI ALL_CLASS_LIST,JTI_PREDEF_FILENAMES]:
376         Delete.
377         * jcf-parse.c (parse_roots): Decrease size to 2.
378         (current_file_list): Convert to a VEC.
379         (all_class_list): Declare.
380         (jcf_parse): Adjust for new type of all_class_list.
381         (java_layout_seen_class_methods): Likewise.
382         (predefined_filenames): Declare.
383         (add_predefined_file): Use it.
384         (predefined_filename_p): Likewise.
385         (java_parse_file): Adjust for new type of current_file_list.                                                                                                                                                     *
386
387 2010-05-25  Jakub Jelinek  <jakub@redhat.com>
388
389         * lang.c (java_classify_record): Return RECORD_IS_INTERFACE
390         for interfaces.
391
392         PR debug/43260
393         * java-tree.h (pending_static_fields): New extern declaration.
394         (java_write_globals): New prototype.
395         * lang.c (LANG_HOOKS_WRITE_GLOBALS): Define.
396         * decl.c (java_mark_class_local): When clearing DECL_EXTERNAL
397         of a static field push it into pending_static_fields vector.
398         * class.c (pending_static_fields): New variable.
399         (add_field): If static field is not DECL_EXTERNAL, push it into
400         pending_static_fields vector.
401         (java_write_globals): New function.
402
403 2010-05-24  Nathan Froyd  <froydnj@codesourcery.com>
404
405         * expr.c (quick_stack): Change type to a VEC.  Update comment.
406         (tree_list_free_list): Delete.
407         (flush_quick_stack): Update for quick_stack type change.
408         (push_value): Likewise.
409         (pop_value): Likewise.
410
411 2010-05-23  Steven Bosscher  <steven@gcc.gnu.org>
412
413         * java-gimplify.c: Do not include tm.h, toplev.h.
414         * typeck.c: Do not include tm.h.
415         * mangle_name.c: Do not include tm.h.
416         * jcf-dump.c: Do not include tm.h, ggc.h.
417         * class.c: Do not include rtl.h, tm_p.h, target.h, except.h, cgraph.h.
418         * decl.c: Do not include tm.h, rtl.h, function.h, expr.h, except.h,
419         and timevar.h.
420         * jcf-parse.c: Do not include tm.h and tm_p.h.
421         * resource.c: Do not include tm.h, rtl.h, flags.h, obstack.h,
422         target.h, and expr.h.
423         * except.c: Do not include tm.h, rtl.h, function.h.
424         * builtins.c: Do not include convert.h.  Explain why RTL headers
425         have to be included here.
426         * verify-glue.c: Do not include tm.h.
427         * jcf-depend.c: Do not include tm.h.
428         * jcf-reader.c: Include ggc.h.
429         * jcf-io.c: Do not include tm.h, toplev.h.
430         * expr.c: Do not include tm.h, rtl.h, expr.h, except.h, tm_p.h,
431         gimple.h.
432         * lang.c: Do not include rtl.h, expr.h.
433         * Make-lang.in: Update dependencies.
434
435 2010-05-23  Steven Bosscher  <steven@gcc.gnu.org>
436
437         * jcf-parse.c: Include bitmap.h.
438         * Make-lang.in: Update dependencies.
439
440 2010-05-20  Jakub Jelinek  <jakub@redhat.com>
441
442         PR debug/43521
443         * decl.c (start_java_method): Set DECL_ARTIFICIAL on the 'this'
444         PARM_DECL.
445
446 2010-05-19  Anatoly Sokolov  <aesok@post.ru>
447
448         * jcf-parse.c (get_constant): Use double_int_to_tree instead of
449         build_int_cst_wide_type.
450
451 2010-05-18  Nathan Froyd  <froydnj@codesourcery.com>
452
453         * expr.c (pop_arguments): Fix use of undeclared variable.
454
455 2010-05-18  Nathan Froyd  <froydnj@codesourcery.com>
456
457         * expr.c (expand_java_multianewarray): Use build_call_vec instead of
458         build_call_list.
459         (pop_arguments): Return a VEC instead of a tree.  Take a method type
460         rather than a list of argument types.
461         (rewrite_rule): Change signature. of rewrite_arglist member.
462         (rewrite_arglist_getcaller): Update signature.
463         (rewrite_arglist_getclass): Likewise.
464         (maybe_rewrite_invocation): Update for rewrite_arglist change.
465         (build_known_method_ref): Take a VEC instead of a tree.
466         (invoke_build_dtable): Likewise.
467         (expand_invoke): Update calls to pop_arguments.  Use build_call_vec
468         instead of build_call_list.
469         (build_jni_stub): Use build_call_vec instead of build_call_list.
470         * java-tree.h (maybe_rewrite_invocation): Update declaration.
471         (build_known_method_ref): Likewise.
472         (invoke_build_dtable): Likewise.
473
474 2010-05-14  Nathan Froyd  <froydnj@codesourcery.com>
475
476         PR 44103
477         * java-tree.h (START_RECORD_CONSTRUCTOR): Change first argument to a
478         vector.  Move call to build_constructor...
479         (FINISH_RECORD_CONSTRUCTOR): ...here.  Add necessary arguments.  Clear
480         TREE_CONSTANT on the constructor.
481         (PUSH_SUPER_VALUE): Change first argument to a vector.
482         (PUSH_FIELD_VALUE): Likewise.
483         * resource.c (compile_resource_data): Update calls to above macros.
484         * constants.c (build_constants_constructor): Likewise.
485         * class.c (build_utf8_ref): Likewise.
486         (make_field_value): Likewise.
487         (make_method_value): Likewise.
488         (add_table_and_syms): New function.
489         (make_class_data): Call it.  Update calls to above macros.
490         (build_symbol_table_entry): New function.
491         (build_symbol_entry): Call it.  Update calls to above macros.
492         (emit_symbol_table): Likewise.
493         (make_catch_class_record): Update calls to above macros.
494         (build_assertion_table_entry): New function.
495         (add_assertion_table_entry): Call it.
496         (emit_assertion_table): Likewise.
497
498 2010-05-06  Manuel López-Ibáñez  <manu@gcc.gnu.org>
499
500         PR 40989
501         * lang.c (java_handle_option): Add argument kind.
502
503 2010-04-18  Eric Botcazou  <ebotcazou@adacore.com>
504
505         * decl.c (java_init_decl_processing): Remove argument in call to
506         initialize_sizetypes
507
508 2010-04-07  Jakub Jelinek  <jakub@redhat.com>
509
510         * exception.cc (_Jv_Throw): Avoid set but not used warning.
511         * include/java-assert.h (JvAssertMessage, JvAssert): Use argument in
512         sizeof to avoid set but not used warnings.
513
514 2010-01-20  Joern Rennecke  <amylaar@spamcop.net>
515
516         * lang.c (java_post_options): Constify variable "dot".
517
518         * jcf-parse.c (set_source_filename): Constify variable "dot".
519         (load_class): Constify variable "separator".
520         Use get_identifier_with_length.
521
522         * jvspec.c (lang_specific_driver): Constify two variables named "p".
523
524 2010-01-09  Jakub Jelinek  <jakub@redhat.com>
525
526         * jcf-dump.c (version): Update copyright notice dates.
527
528 2009-11-28  Jakub Jelinek  <jakub@redhat.com>
529
530         * jvspec.c (lang_specific_driver): Remove unused
531         saw_verbose_flag variable.
532         * jcf-dump.c (main): Remove unused general_purpose_bits
533         variable.
534         * builtins.c (initialize_builtins): Remove unused float_ftype_float
535         variable.
536         * expr.c (java_stack_pop): Remove unused val variable.
537         (build_jni_stub): Remove unused res_type variable.
538         * verify-impl.c (check_field_constant): Remove unused len variable.
539
540 2009-10-20  Joel Dice <dicej@mailsnare.net>
541
542         PR java/28474
543         * mangle_name.c (append_unicode_mangled_name): Fix mangling
544         of names with multiple underscores and "U".
545         (unicode_mangling_length): Likewise.
546
547 2009-10-03  Simon Baldwin  <simonb@google.com>
548
549         * config-lang.in (lang_dirs): Remove zlib.
550
551 2009-09-28  Richard Henderson  <rth@redhat.com>
552
553         * builtins.c (initialize_builtins): Update call to
554         build_common_builtin_nodes.
555         * lang.c (LANG_HOOKS_EH_USE_CXA_END_CLEANUP): New.
556
557 2009-09-14  Richard Henderson  <rth@redhat.com>
558
559         * builtins.c (initialize_builtins): Update call to
560         build_common_builtin_nodes.
561         * decl.c (java_init_decl_processing): Don't call
562         default_init_unwind_resume_libfunc.
563         * except.c: Include tree-iterator.h.
564         (build_exception_object_var): New.
565         (build_exception_object_ref): Use it.
566         (expand_end_java_handler): Initialize it from __builtin_eh_pointer.
567         Attach all CATCH_EXPRs to a single TRY_CATCH_EXPR.
568         * java-tree.h (DECL_FUNCTION_EXC_OBJ): New.
569
570 2009-09-13  Richard Guenther  <rguenther@suse.de>
571         Rafael Avila de Espindola  <espindola@google.com>
572
573         * decl.c (do_nothing): Remove.
574         (java_init_decl_processing): Do not set lang_eh_runtime_type.
575         * Make-lang.in (lang.o): Add $(EXCEPT_H) dependency.
576         * lang.c (java_eh_personality): New.
577         (java_eh_personality_decl): Likewise.
578         (LANG_HOOKS_EH_PERSONALITY): Define.
579
580 2009-09-03  Diego Novillo  <dnovillo@google.com>
581
582         * lang.c (lang_hooks): Remove const qualifier.
583
584 2009-09-01  Jakub Jelinek  <jakub@redhat.com>
585
586         * boehm.c (mark_reference_fields): Compute % in HOST_WIDE_INT
587         type.
588
589 2009-09-01  Richard Guenther  <rguenther@suse.de>
590
591         * lang.c (LANG_HOOKS_MARK_ADDRESSABLE): Remove.
592         * java-tree.h (java_mark_addressable): Likewise.
593         * typeck.c (java_mark_addressable): Likewise.
594
595 2009-08-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
596
597         * Make-lang.in (java.install-pdf): Install gcj.pdf in
598         $(pdfdir)/gcc, alongside the other manuals.
599
600 2009-08-12  Andrew Haley  <aph@redhat.com>
601
602         * builtins.c (compareAndSwapInt_builtin): Use
603         flag_use_atomic_builtins.
604         (compareAndSwapLong_builtin): Likewise.
605         (compareAndSwapObject_builtin): Likewise.
606         * jvspec.c: Add flag_use_atomic_builtins.
607         * gcj.texi: Likewise.
608         * java-tree.h: Likewise.
609         * lang.opt: Likewise.
610
611 2009-08-11  Dodji Seketeli  <dodji@redhat.com>
612
613         PR debug/40990
614         * lang.c (put_decl_node): Outputs different level of information
615         depending on the verbosity level.
616
617 2009-07-31  Andrew Haley  <aph@redhat.com>
618
619         PR java/40867
620         * decl.c (java_replace_references): Set EXPR_LOCATION on all
621         generated expressions.
622         (binding_level.loc): new field.
623         (clear_binding_level): Initialize loc.
624         (set_input_location): New function.
625         (pushlevel): Set new binding_level.loc.
626         (poplevel): Set EXPR_LOCATION on the new BIND_EXPR_BODY.
627         (start_java_method): Set DECL_SOURCE_LOCATION of this new method.
628         (java_add_stmt): Set the EXPR_LOCATION on all subtrees of new_stmt.
629
630 2009-07-17  Richard Guenther  <rguenther@suse.de>
631
632         PR c/40401
633         * java-gimplify.c (java_genericize): Do not gimplify here.
634         But replace all local references.
635         (java_gimplify_expr): Do not replace local references here.
636         (java_gimplify_modify_expr): Likewise.
637         * jcf-parse.c (java_parse_file): Do not finalize the CU or
638         optimize the cgraph here.
639         * decl.c (java_replace_reference): Make static.
640         (java_replace_references): New function.
641         (end_java_method): Clear base_decl_map.
642         * java-tree.h (java_replace_references): Declare.
643         (java_replace_reference): Remove.
644
645 2009-07-14  Taras Glek  <tglek@mozilla.com>
646             Rafael Espindola  <espindola@google.com>
647
648         * Make-lang.in (java.install-plugin): New target for
649         installing plugin headers.
650
651 2009-07-07  Manuel López-Ibáñez  <manu@gcc.gnu.org>
652
653         * class.c: Replace %J by an explicit location. Update all calls.
654         
655 2009-07-07  Manuel López-Ibáñez  <manu@gcc.gnu.org>
656
657         * jcf-parse.c: Replace %H by an explicit location. Update all calls.
658
659 2009-06-29  Andrew Haley  <aph@redhat.com>
660
661         PR java/40590
662         * java-tree.h (cxx_keyword_p): New declaration.
663         * mangle_name.c (utf8_cmp): Move here from mangle.c.
664         (cxx_keywords): Likewise.
665         (cxx_keyword_p): Likewise.
666         (MANGLE_CXX_KEYWORDS): New macro.
667         (append_gpp_mangled_name): Use MANGLE_CXX_KEYWORDS.
668         (append_gpp_mangled_name): Likewise.
669         * mangle.c: Move code to mangle_name.c. 
670         (mangle_member_name): Don't call cxx_keyword_p.
671
672 2009-06-12  Aldy Hernandez  <aldyh@redhat.com>
673
674         * java-gimplify.c (java_gimplify_block): New argument to
675         build_empty_stmt.
676         * expr.c (force_evaluation_order): Same.
677         * typeck.c: Add location to build_decl or PUSH_FIELD calls.
678         * class.c: Same.
679         * decl.c: Same.
680         * jcf-parse.c: Same.
681         * constants.c: Same.
682         * resource.c: Same.
683         * except.c: Same.
684         * builtins.c: Same.
685         * expr.c: Same.
686         * java-tree.h (PUSH_FIELD): Add location field.
687         
688 2009-06-09  Ian Lance Taylor  <iant@google.com>
689
690         * verify.h: Remove extern "C".
691
692 2009-06-07  Ian Lance Taylor  <iant@google.com>
693
694         * jcf-parse.c (handle_constant): Change local variable 'kind' to
695         unsigned int.
696
697 2009-06-01  Ian Lance Taylor  <iant@google.com>
698
699         * jcf-io.c (find_class): Use CONST_CAST.
700
701 2009-05-27  Ian Lance Taylor  <iant@google.com>
702
703         * Make-lang.in ($(XGCJ)$(exeext)): Change $(COMPILER) to
704         $(LINKER).
705         (jc1$(exeext), jcf-dump$(exeext), jvgenmain$(exeext)): Likewise.
706
707 2009-05-26  Ian Lance Taylor  <iant@google.com>
708
709         * Make-lang.in (jvspec.o): Use $(COMPILER).
710         ($(XGCJ)$(exeext), jc1$(exeext), jcf-dump$(exeext)): Likewise.
711         (jvgenmain$(exeext), java/jcf-io.o, java/jcf-path.o): Likewise.
712
713 2009-05-12  Alexandre Oliva  <aoliva@redhat.com>
714
715         * Make-lang.in (GCJ): Renamed to...
716         (XGCJ): ... this.
717
718 2009-04-27  Ian Lance Taylor  <iant@google.com>
719
720         * builtins.c (java_builtins): Add casts to enum type.
721         * verify-impl.c (check_class_constant): Add cast to enum type.
722         (check_constant, check_wide_constant): Likewise.
723
724 2009-04-27  Richard Guenther  <rguenther@suse.de>
725
726         PR java/38374
727         * constants.c (build_constants_constructor): Retain the old
728         pointer type as valid TYPE_POINTER_TO after patching the
729         type of the constant pool decl.
730
731 2009-04-24  Ian Lance Taylor  <iant@google.com>
732
733         * jcf-parse.c (handle_constant): Add cast to enum type.
734
735 2009-04-21  Taras Glek <tglek@mozilla.com>
736
737         * builtins.c: Update GTY annotations to new syntax
738         * decl.c: Likewise
739         * java-tree.h: Likewise
740         * jcf.h: Likewise
741         * lang.c: Likewise
742
743 2009-04-21  Joseph Myers  <joseph@codesourcery.com>
744
745         * ChangeLog, ChangeLog.ptr, ChangeLog.tree-ssa: Add copyright and
746         license notices.
747
748 2009-04-18  Ian Lance Taylor  <iant@google.com>
749
750         * verify-impl.c (verify_instructions_0): Add cast to enum type.
751
752 2009-04-09  Paolo Bonzini  <bonzini@gnu.org>
753
754         * builtins.c (compareAndSwapLong_builtin,
755         compareAndSwapInt_builtin, compareAndSwapObject_builtin,
756         VMSupportsCS8_builtin): Do not look at sync_compare_and_swap_cc.
757
758 2009-03-31  Richard Guenther  <rguenther@suse.de>
759
760         * java-gimplify.c (java_gimplify_expr): Do not manually gimplify
761         the first operand of binary and comaprison expressions.
762
763 2009-03-30  Joseph Myers  <joseph@codesourcery.com>
764
765         PR rtl-optimization/323
766         * lang.c (java_post_options): Set flag_excess_precision_cmdline.
767         Give an error for -fexcess-precision=standard for processors where
768         the option is significant.
769
770 2009-03-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
771
772         * lang.opt: Unify help text for -Wdeprecated.
773
774 2009-02-03  Jakub Jelinek  <jakub@redhat.com>
775
776         * jcf-dump.c (version): Update copyright notice dates.
777
778 2009-01-16  Richard Guenther  <rguenther@suse.de>
779
780         PR tree-optimization/38835
781         PR middle-end/36227
782         * builtins.c (build_addr_sum): Use POINTER_PLUS_EXPR.
783
784 2008-12-05  Sebastian Pop  <sebastian.pop@amd.com>
785
786         PR bootstrap/38262
787         * Make-lang.in (jc1): Add BACKENDLIBS, remove GMPLIBS.
788
789 2008-11-04  Andrew Haley  <aph@redhat.com>
790
791         PR java/37068
792         * jcf-parse.c (java_emit_static_constructor): Don't call
793         cgraph_build_static_cdtor.  Rewrite.
794
795 2008-10-24  Jakub Jelinek  <jakub@redhat.com>
796
797         * Make-lang.in (check-java-subtargets): New target.
798
799 2008-10-16  David Edelsohn  <edelsohn@gnu.org>
800
801         PR target/35483
802         * Make-lang.in (class.o): Depend on $(TM_P_H).
803         (expr.o): Same.
804         * class.c: Include tm_p.h.
805         * expr.c: Include tm_p.h.
806
807 2008-10-14  Andrew Haley  <aph@redhat.com>
808
809         * constants.c (build_constant_data_ref): Make sure we only build
810         one copy of the decl for the constant pool.
811
812 2008-09-22  Andrew Haley  <aph@redhat.com>
813
814         * expr.c (rules): Add new rule for
815         gnu.java.lang.VMCPStringBuilder.toString.
816         (rewrite_rule.new_classname): New field.
817         (maybe_rewrite_invocation): Use new_classname field instead of
818         DECL_CONTEXT (*method_p).
819         Allow rewrite_arglist to be NULL.
820
821 2008-09-17  Andrew Pinski  <andrew_pinski@playstation.sony.com>
822
823         * lang.c (LANG_HOOKS_GET_CALLEE_FNDECL): Don't define.
824         (java_get_callee_fndecl): Kill.
825
826 2008-09-17  Jan Hubicka  <jh@suse.cz>
827
828         PR c++/18071
829         * class.c (add_method_1): Do not initialize DECL_INLINE.
830         (make_local_function_alias): Likewise.
831         * expr.c (rewrite_arglist_getcaller): Set DECL_UNINLINABLE.
832         * lang.c (java_decl_ok_for_sibcall): Use DECL_UNINLINABLE.
833
834 2008-09-09  Richard Guenther  <rguenther@suse.de>
835
836         * decl.c (build_result_decl): Remove no longer applicable
837         promotion.
838
839 2008-09-05  David Daney  <ddaney@avtrex.com>
840
841         * gcj.texi (-freduced-reflection): Clarify option's restrictions.
842
843 2008-08-21  David Daney  <ddaney@avtrex.com>
844
845         * class.c (make_class_data): Don't add field_index when
846         flag_reduced_reflection set.
847
848 2008-08-12  Ulrich Weigand  <uweigand@de.ibm.com>
849
850         * typeck.c (convert): Do not check for TARGET_FLOAT_FORMAT.
851
852 2008-08-08  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
853
854         PR 28875
855         * lang.c (java_handle_option): Replace set_Wunused with
856         warn_unused.
857
858 2008-07-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
859
860         * gcj.texi: Update copyright years.  Do not list GPL as
861         Invariant Section.
862
863 2008-07-29  Jakub Jelinek  <jakub@redhat.com>
864
865         * class.c (build_utf8_ref): Set DECL_SIZE and DECL_SIZE_UNIT
866         from ctype's sizes.
867
868         * class.c (build_utf8_ref): Pad initializer string to utf8const_type's
869         alignment.
870
871 2008-07-29  Jan Hubicka  <jh@suse.cz>
872
873         * lang.c (java_post_options): Remove handling of flag_no_inline.
874
875 2008-07-28  Richard Guenther  <rguenther@suse.de>
876
877         Merge from gimple-tuples-branch.
878
879         2008-07-18  Richard Guenther  <rguenther@suse.de>
880
881         * expr.c: Include tree-iterator.h.
882         * Make-lang.in (expr.o): Add tree-iterator.h dependency.
883
884         2008-07-18  Aldy Hernandez  <aldyh@redhat.com>
885
886         * java-gimplify.c: Include gimple.h instead of tree-gimple.h.
887         * expr.c: Same.
888
889         2008-07-14  Aldy Hernandez  <aldyh@redhat.com>
890
891         * java-gimplify.c (java_gimplify_expr): Same.
892         (java_gimplify_modify_expr): Same.
893         * java-tree.h: Rename GENERIC_NEXT to TREE_CHAIN.
894
895         2008-05-02  Diego Novillo  <dnovillo@google.com>
896
897         * expr.c (build_java_throw_out_of_bounds_exception): Fix
898         mixed declarations and code.
899
900         2008-05-02  Doug Kwan  <dougkwan@google.com>
901         
902         * expr.c (build_java_throw_out_of_bounds_exception ): Wrap call to
903         _Jv_ThrowBadArrayIndex with a COMPOUND_EXPR to return 0.
904
905         2008-02-19  Diego Novillo  <dnovillo@google.com>
906
907         http://gcc.gnu.org/ml/gcc-patches/2008-02/msg00804.html
908
909         * java-gimplify.c (java_gimplify_self_mod_expr): Change
910         gimple_seq arguments to gimple_seq *.  Update all users.
911
912         2007-11-26  Aldy Hernandez  <aldyh@redhat.com>
913
914         * java-gimplify.c (java_gimplify_expr): Make pre_p and post_p
915         sequences.
916         (java_gimplify_self_mod_expr): Same.                                    
917         * java-tree.h (java_gimplify_expr): Make pre_p and post_p               
918         sequences.
919
920 2008-07-24  Jan Hubicka  <jh@suse.cz>
921
922         * java/decl.c: Include cgraph.h
923         (end_java_method): Remove non-unit-at-a-time code.
924         (java_mark_decl_local): Likewise; sanity check that we don't touch
925         finalized nodes.
926
927 2008-07-15  Jan Hubicka  <jh@suse.cz>
928
929         * lang.c (java_init_options): Enable unit-at-a-time by default.
930
931 2008-07-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
932
933         * Make-lang.in (jvspec.o): Fix dependencies.
934
935 2008-07-06  Tom Tromey  <tromey@redhat.com>
936
937         * Make-lang.in (java/parse.o-warn): Remove.
938         (java/jcf-io.o-warn): Remove.
939
940 2008-07-05  Tom Tromey  <tromey@redhat.com>
941
942         * jcf-io.c: Don't include fnmatch.h.  Don't use JCF_USE_SCANDIR.
943         (compare_path): Remove.
944         (java_or_class_file): Likewise.
945         (memoized_dirlist_entry): Likewise.
946         (memoized_dirlist_hash): Likewise.
947         (memoized_dirlist_lookup_eq): Likewise.
948         (memoized_dirlists): Likewise.
949         (caching_stat): Likewise.
950         (find_class): Use stat.
951         * jcf.h (JCF_USE_SCANDIR): Remove.
952
953 2008-06-30  Joshua Sumali  <jsumali@redhat.com>
954
955         * Make-lang.in (JAVA_MANFILES): Add doc/aot-compile.1 and
956         doc/rebuild-gcj-db.1
957         (java.uninstall): Likewise.
958         (java.maintainer-clean): Likewise.
959         (aot-compile.pod): New rule.
960         (rebuild-gcj-db.pod): New rule.
961         (java.install-man): Install doc/aot-compile.1 and doc/rebuild-gcj-db.1
962         * gcj.texi: Add new sections for aot-compile and rebuild-gcj-db.
963
964 2008-06-29  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
965
966         * Make-lang.in (java/jcf-io.o-warn): New.
967
968 2008-06-24  Tom Tromey  <tromey@redhat.com>
969
970         * jcf-path.c (jcf_path_init): Don't name variable 'try'.
971         * expr.c (add_type_assertion): Rename argument.
972         (build_java_arrayaccess): Don't name variable 'throw'.
973         (ARRAY_NEW_MULTI): Don't name variable 'class'.
974         * jcf-io.c (find_class): Don't name variable 'class'.
975         * mangle.c (compression_table_add): Don't name variable 'new'.
976         * constants.c (cpool_for_class): Rename argument.
977         (alloc_constant_fieldref): Likewise.
978         * jcf-parse.c (handle_innerclass_attribute): Don't name variable
979         'class'.
980         (read_class): Likewise.
981         (parse_zip_file_entries): Likewise.
982         (process_zip_dir): Likewise.
983         * decl.c (java_mark_class_local): Rename argument.
984         * class.c (GEN_TABLE): Use type_name, not typename.
985         (gen_indirect_dispatch_tables): Likewise.
986         (add_field): Rename argument.
987         (is_compiled_class): Likewise.
988         (safe_layout_class): Likewise.
989         (emit_assertion_table): Likewise.
990         * typeck.c (has_method): Rename argument.
991
992 2008-06-19  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
993
994         * class.c (ident_subst, mangled_classname, unmangle_classname,
995         gen_indirect_dispatch_tables, add_method_1,
996         build_fieldref_cache_entry, make_local_function_alias,
997         layout_class, java_treetreehash_find, java_treetreehash_new,
998         split_qualified_name): Fix for -Wc++-compat.
999         * constants.c (set_constant_entry, cpool_for_class): Likewise.
1000         * decl.c (make_binding_level, java_dup_lang_specific_decl,
1001         start_java_method): Likewise.
1002         * except.c (prepare_eh_table_type): Likewise.
1003         * expr.c (type_assertion_hash, note_instructions): Likewise.
1004         * java-tree.h (MAYBE_CREATE_VAR_LANG_DECL_SPECIFIC,
1005         MAYBE_CREATE_TYPE_TYPE_LANG_SPECIFIC): Likewise.
1006         * jcf-io.c (jcf_filbuf_from_stdio, opendir_in_zip, find_class):
1007         Likewise.
1008         * jcf-parse.c (reverse, java_read_sourcefilenames,
1009         annotation_grow, rewrite_reflection_indexes, java_parse_file,
1010         process_zip_dir): Likewise.
1011         * jcf-path.c (add_entry, add_path, jcf_path_init,
1012         jcf_path_extdirs_arg): Likewise.
1013         * jcf-reader.c (jcf_parse_constant_pool): Likewise.
1014         * jvgenmain.c (do_mangle_classname): Likewise.
1015         * lang.c (put_decl_string): Likewise.
1016         * verify-impl.c (make_state_copy, make_state, add_new_state):
1017         Likewise.
1018
1019 2008-06-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1020
1021         * gcj.texi: Expand TABs, remove whitespace from blank lines.
1022
1023 2008-06-14  Tom Tromey  <tromey@redhat.com>
1024
1025         PR java/36247:
1026         * class.c (build_class_ref): Initialize this_classdollar when
1027         needed.
1028
1029 2008-05-23  Andrew Haley  <aph@redhat.com>
1030
1031         * jcf-parse.c (give_name_to_class): Call find_sourcefile to find full
1032         pathname of source file.
1033
1034 2008-05-12  Aaron W. LaFramboise  <aaronavay62@aaronwl.com>
1035
1036         * jcf-dump.c (print_constant): Use
1037         HOST_LONG_LONG_FORMAT.
1038
1039 2008-05-07  Kenneth Zadeck <zadeck@naturalbridge.com>
1040
1041         * decl.c (java_init_decl_processing): Change DECL_IS_PURE to
1042         DECL_PURE_P.
1043
1044 2008-04-23  Paolo Bonzini  <bonzini@gnu.org>
1045
1046         * class.c (build_utf8_ref): Don't set TREE_INVARIANT.
1047         (build_classdollar_field): Don't set TREE_INVARIANT.
1048         (get_dispatch_table): Don't set TREE_INVARIANT.
1049         (make_class_data): Don't set TREE_INVARIANT.
1050         (build_symbol_entry): Don't set TREE_INVARIANT.
1051         (emit_symbol_table): Don't set TREE_INVARIANT.
1052         * constants.c (build_constant_data_ref): Don't set TREE_INVARIANT.
1053         (build_ref_from_constant_pool): Don't set TREE_INVARIANT.
1054         * resource.c (compile_resource_data): Don't set TREE_INVARIANT.
1055         * expr.c (cache_cpool_data_ref): Don't set TREE_INVARIANT.
1056
1057 2008-04-03  Tom Tromey  <tromey@redhat.com>
1058
1059         * Make-lang.in (java_OBJS): New variable.
1060
1061 2008-04-03  Paolo Bonzini  <bonzini@gnu.org>
1062
1063         * java-tree.h (insert_block): Kill.
1064         * decl.c (insert_block): Kill.
1065                 
1066 2008-04-01  Joseph Myers  <joseph@codesourcery.com>
1067
1068         * gcj.texi: Include gpl_v3.texi instead of gpl.texi
1069         * Make-lang.in (TEXI_JAVA_FILES): Include gpl_v3.texi instead of
1070         gpl.texi.
1071
1072 2008-03-27  Tom Tromey  <tromey@redhat.com>
1073
1074         * Make-lang.in: Revert automatic dependency patch.
1075
1076 2008-03-25  Tom Tromey  <tromey@redhat.com>
1077
1078         * Make-lang.in: Removed most explicit .o targets.
1079         (java/jvspec.o): Reduce to variable setting.  Moved to java/.
1080         ($(GCJ)$(exeext)): Update.
1081         (JAVA_OBJS): New variable.
1082         (JCFDUMP_OBJS): Reformat.
1083         (java_OBJS): New variable.
1084         (java/jvspec.o-warn): Update.
1085         (java/parse.o-warn): Remove.
1086         (JAVA_TREE_H): Remove.
1087         (java/jcf-io.o): Reduce to variable setting.
1088         (ALL_CPPFLAGS): Likewise.
1089
1090 2008-03-12  Paolo Bonzini  <bonzini@gnu.org>
1091
1092         * mangle.c (java_mangle_decl): Remove dead check.
1093
1094 2008-03-11  Paolo Bonzini  <bonzini@gnu.org>
1095
1096         * jcf-parse.c (java_parse_file): Assert binding levels are
1097         left in order.
1098         * lang.c (LANG_HOOKS_CLEAR_BINDING_STACK, java_clear_binding_stack):
1099         Delete.
1100
1101 2008-03-02  Jakub Jelinek  <jakub@redhat.com>
1102
1103         * jcf-dump.c (version): Update copyright notice dates.
1104
1105 2008-02-29  Tom Tromey  <tromey@redhat.com>
1106
1107         * expr.c (expand_byte_code): Set DECL_FUNCTION_LAST_LINE on
1108         method.
1109         * java-tree.h (struct lang_decl_func): Remove obsolete comment.
1110
1111 2008-02-26  Tom Tromey  <tromey@redhat.com>
1112
1113         * lang.c (java_post_options): Remove conditional.
1114         * expr.c (expand_byte_code): Remove old location code.
1115         * jcf-parse.c (set_source_filename): Remove old location code.
1116         (give_name_to_class): Likewise.
1117         (jcf_parse): Likewise.
1118         (duplicate_class_warning): Likewise.
1119         (parse_class_file): Likewise.
1120         (java_parse_file): Likewise.
1121         * decl.c (finish_method): Remove old location code.
1122         * class.c (push_class): Remove old location code.
1123
1124 2008-02-06  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1125
1126         PR other/35107
1127         * Make-lang.in (jc1): Add $(GMPLIBS).
1128
1129 2008-01-23  David Daney  <ddaney@avtrex.com>
1130
1131         * class.c (hide)  Rename to...
1132         (java_hide_decl) ... this throughout, and make public.
1133         * resource.c (Jr_count): Remove.
1134         (compile_resource_data): Call java_mangle_resource_name to generate
1135         decl name.  Make resource decl public and hidden.
1136         * mangle.c (java_mangle_resource_name): New function.
1137         * java-tree.h (java_hide_decl, java_mangle_resource_name): Declare
1138         functions.
1139
1140 2008-01-04  Andrew Haley  <aph@redhat.com>
1141
1142         PR java/17779
1143         * jcf-parse.c (parse_zip_file_entries): Move decl to compile on
1144         C90.
1145
1146 2008-01-03  Andrew Haley  <aph@redhat.com>
1147
1148         PR java/17779
1149         * jcf-parse.c (parse_zip_file_entries): Unset TYPE_ALIAS_SET if
1150         we're about to re-layout the type.
1151
1152 2007-12-20  Alexandre Oliva  <aoliva@redhat.com>
1153
1154         * lang.c (java_classify_record): Don't return
1155         RECORD_IS_INTERFACE for now.
1156
1157 2007-12-18  Andrew Haley  <aph@redhat.com>
1158
1159         PR java/27643
1160         * jcf-parse.c (java_parse_file): Remove call to
1161         java_mark_class_local.
1162         (parse_class_file): Reinstate call to java_mark_class_local here.
1163         * decl.c (java_mark_cni_decl_local): If the ASSEMBLER_NAME is
1164         already set, call java_mangle_decl() and make_decl_rtl() to
1165         rewrite its name as a hidden alias.
1166
1167 2007-12-15  Alexandre Oliva  <aoliva@redhat.com>
1168
1169         PR debug/7081
1170         * lang.c (java_classify_record): New.
1171         (LANG_HOOKS_CLASSIFY_RECORD): Override.
1172
1173 2007-11-26  Andreas Krebbel  <krebbel1@de.ibm.com>
1174
1175         PR 34081/C++
1176         * decl.c (finish_method): Pass 'false' for the new
1177         allocate_struct_function parameter.
1178
1179 2007-11-26  Alexandre Oliva  <aoliva@redhat.com>
1180
1181         * expr.c (build_jni_stub): Use the computed jni func type for
1182         variable meth.
1183
1184 2007-11-26  Alexandre Oliva  <aoliva@redhat.com>
1185
1186         * class.c (JAVA_TREEHASHHASH_H): Use TYPE_UID.
1187
1188 2007-11-26  Alexandre Oliva  <aoliva@redhat.com>
1189
1190         * expr.c (type_assertion_hash): Hash type uids rather than
1191         tree pointers.
1192
1193 2007-11-17  David Daney  <ddaney@avtrex.com>
1194             Andrew Haley  <aph@redhat.com>
1195
1196         * constants.c (build_constants_constructor):  Use POINTER_SIZE
1197         insead of BITS_PER_WORD in big-endian work around.
1198
1199 2007-11-07  Tom Tromey  <tromey@redhat.com>
1200
1201         PR java/34019:
1202         * gcj.texi (Input Options): Add missing noun.
1203
1204 2007-11-02  Tom Tromey  <tromey@redhat.com>
1205
1206         PR java/33765:
1207         * jcf-parse.c (java_parse_file): Ignore ZIPEMPTYMAGIC files.
1208         * zipfile.h (ZIPEMPTYMAGIC): New define.
1209
1210 2007-11-01  Tom Tromey  <tromey@redhat.com>
1211
1212         * Make-lang.in (java/jcf-dump.o): Depend on zipfile.h.
1213         (java/jcf-parse.o): Depend on jcf-reader.c, zipfile.h, and jcf.h.
1214         (java/jcf-io.o): Depend on zipfile.h.
1215
1216 2007-10-17  Richard Guenther  <rguenther@suse.de>
1217
1218         * Make-lang.in (java/builtins.o): Add $(OPTABS_H) and $(EXPR_H)
1219         dependencies.
1220
1221 2007-10-03  Andrew Haley  <aph@redhat.com>
1222
1223         PR java/33639
1224         * class.c (mangled_classname): Detect and replace illegal
1225         characters in assembly language symbols.
1226         (gen_indirect_dispatch_tables): Call mangled_classname() on
1227         the type.
1228
1229 2007-09-27  Jakub Jelinek  <jakub@redhat.com>
1230
1231         * lang.c (java_print_error_function): Add third argument.
1232
1233 2007-09-15  Tom Tromey  <tromey@redhat.com>
1234
1235         * java-tree.h (struct lang_decl_func) <function_decl_body>:
1236         Remove.
1237         <init_final>: Likewise.
1238         * lang.c (java_dump_tree): Update.
1239         * java-tree.h (DECL_FUNCTION_BODY): Remove.
1240
1241 2007-09-11  Jan Hubicka <jh@suse.cz>
1242
1243         * decl.c (java_expand_body): Kill.
1244         (LANG_HOOKS_CALLGRAPH_EXPAND_FUNCTION): Kill.
1245
1246 2007-09-06  Tom Tromey  <tromey@redhat.com>
1247
1248         * jcf-parse.c (parse_class_file): Re-enter the current file.
1249
1250 2007-09-07  Roman Zippel  <zippel@linux-m68k.org>
1251
1252         * boehm.c (mark_reference_fields): Move misaligned pointer check
1253         after JREFERENCE_TYPE_P test
1254
1255 2007-09-06  Roman Zippel  <zippel@linux-m68k.org>
1256
1257         * boehm.c (mark_reference_fields): Don't use bitmap as gc_descr
1258         if pointer is misaligned.
1259
1260 2007-09-06  Tom Tromey  <tromey@redhat.com>
1261
1262         * lang.c (java_post_options): Update.
1263         * jcf-parse.c (set_source_filename): Update.
1264         (give_name_to_class): Update.
1265         (jcf_parse): Update.
1266         (duplicate_class_warning): Update.
1267         (parse_class_file): Update.
1268         (java_parse_file): Update.
1269         * expr.c (expand_byte_code): Update.
1270
1271 2007-09-05  Sandra Loosemore  <sandra@codesourcery.com>
1272
1273         * decl.c (finish_method): Use set_cfun.
1274
1275 2007-09-04  Andrew Haley  <aph@redhat.com>
1276
1277         * decl.c (java_init_decl_processing): Call "__cxa_end_cleanup"
1278         when using the ARM EABI.
1279
1280 2007-09-03  Daniel Jacobowitz  <dan@codesourcery.com>
1281
1282         * Make-lang.in (jvspec.o): Remove SHLIB_MULTILIB.
1283
1284 2007-09-03  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1285
1286         * jcf-parse.c (read_class, java_parse_file): Supply a TYPE for
1287         CONST_CAST.
1288         * jcf.h (JCF_FINISH): Likewise.
1289
1290 2007-08-28  Tom Tromey  <tromey@redhat.com>
1291
1292         * Make-lang.in (java.tags): Don't tag '*.y' files.
1293
1294 2007-08-25  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1295
1296         * lang.c (java_decl_ok_for_sibcall): Likewise.
1297
1298 2007-08-21  Paul Brook  <paul@codesourcery.com>
1299             Nathan Sidwell  <nathan@codesourcery.com>
1300             Mark Mitchell  <mark@codesourcery.com>
1301             Joseph Myers  <joseph@codesourcery.com>
1302
1303         * jcf-dump.c (version): Use pkgversion_string.  Update copyright
1304         date.
1305
1306 2007-08-20  Richard Guenther  <rguenther@suse.de>
1307
1308         * lang.c (java_tree_inlining_walk_subtrees): Remove.
1309         (LANG_HOOKS_TREE_INLINING_WALK_SUBTREES): Remove.
1310
1311 2007-08-17  Tom Tromey  <tromey@redhat.com>
1312
1313         * typeck.c (find_method_in_interfaces): Update.
1314         * jcf-parse.c (load_class): Update.
1315         * java-gimplify.c (java_gimplify_component_ref): Removed.
1316         (java_gimplify_modify_expr): Update.  Removed pre_p and post_p
1317         arguments.
1318         (java_gimplify_expr): Update.
1319         * decl.c (java_init_decl_processing): Update.
1320         * class.c (set_constant_value): Update.
1321         (make_class_data): Update.
1322         (finish_class): Update.
1323         (build_static_field_ref): Update.
1324         (is_compiled_class): Update.
1325         (maybe_layout_super_class): Update.
1326         (layout_class): Update.
1327         (layout_class_method): Update.
1328         * java-tree.h (CAN_COMPLETE_NORMALLY): Removed.
1329         (lang_decl_var) <am, final_iud, cif>: Removed fields.
1330         (lang_decl_func) <init_calls_this>: Removed field.
1331         (lang_type) <dot_class, verify_method>: Removed fields.
1332         (FIELD_NESTED_ACCESS): Removed.
1333         (FIELD_NESTED_ACCESS_P): Removed.
1334         (DECL_FIELD_FINAL_IUD): Removed.
1335         (DECL_LOCAL_FINAL_IUD): Removed
1336         (LOCAL_FINAL_P): Removed.
1337         (FINAL_VARIABLE_P): Removed.
1338         (CLASS_FINAL_VARIABLE_P): Removed.
1339         (DECL_BIT_INDEX): Removed.
1340         (DECL_INIT_CALLS_THIS): Removed.
1341         (FIELD_LOCAL_ALIAS): Removed.
1342         (FIELD_LOCAL_ALIAS_USED): Removed.
1343         (FIELD_THISN): Removed.
1344         (DECL_FUNCTION_INIT_TEST_CLASS): Removed.
1345         (LOCAL_CLASS_INITIALIZATION_FLAG): Removed.
1346         (LOCAL_CLASS_INITIALIZATION_FLAG_P): Removed.
1347         (TYPE_DOT_CLASS): Removed.
1348         (TYPE_VERIFY_METHOD): Removed.
1349         (ID_CLASSDOLLAR_P): Removed.
1350         (enum java_tree_index) <JTI_CLASSDOLLAR_IDENTIFIER_NODE>:
1351         Removed.
1352         (classdollar_identifier_node): Removed.
1353         (TYPE_UNKNOWN): Removed.
1354         (CLASS_FROM_SOURCE_P): Removed.
1355         * expr.c (build_jni_stub): Update.
1356         (force_evaluation_order): Update.
1357         (build_java_empty_stmt): Update.
1358         (build_class_init): Update.
1359         (java_stack_swap): Update.
1360         (build_jni_stub): Update.
1361
1362 2007-08-17  Tom Tromey  <tromey@redhat.com>
1363
1364         * java-tree.h (LABEL_TYPE_STATE): Removed.
1365         (load_type_state): Removed.
1366         (LABEL_PC): Removed.
1367         (LABEL_VERIFIED): Removed.
1368         (type_states): Declare.
1369         * expr.c (type_states): New global.
1370         (load_type_state): Now static.  Use type_states.  Changed
1371         argument.
1372         (lookup_label): Don't set LABEL_PC.
1373         (expand_byte_code): Don't use LABEL_VERIFIED.
1374         (note_instructions): Initialize type_states.
1375         * verify-glue.c (vfy_note_stack_depth): Rewrote.
1376         (vfy_note_stack_type): Use type_states.
1377         (vfy_note_local_type): Likewise.
1378
1379 2007-08-10  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1380
1381         * jcf-parse.c (read_class, java_parse_file): Use CONST_CAST.
1382         * jcf.h (JCF_FINISH): Likewise.
1383
1384 2007-07-31  Nick Clifton  <nickc@redhat.com>
1385
1386         * java-gimplify.c: Change copyright header to refer to version 3
1387         of the GNU General Public License and to point readers at the
1388         COPYING3 file and the FSF's license web page.
1389         * typeck.c, lang-specs.h, mangle_name.c, jcf-dump.c, class.c,
1390         decl.c, config-lang.in, jcf-parse.c, constants.c, Make-lang.in,
1391         resource.c, except.c, builtins.c, jvspec.c, java-tree.def,
1392         javaop.def, jcf-path.c, verify-glue.c, jcf-depend.c, lang.opt,
1393         jcf-reader.c, mangle.c, zextract.c, jcf-io.c, jcf.h, zipfile.h,
1394         verify.h, java-except.h, win32-host.c, expr.c, jvgenmain.c,
1395         parse.h, lang.c, java-tree.h, javaop.h, boehm.c: Likewise.
1396
1397 2007-07-30  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1398
1399         * jcf-io.c (find_class): Fix -Wcast-qual warnings.
1400
1401 2007-07-29  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1402
1403         * lang.c (java_get_callee_fndecl): Constify.
1404
1405 2007-07-27  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1406
1407         * mangle.c (set_type_package_list): Constify.
1408         * verify-glue.c (vfy_make_string): Delete.
1409         * verify.h (vfy_make_string): Likewise.
1410
1411 2007-07-26  Tom Tromey  <tromey@redhat.com>
1412
1413         * java-tree.h (push_labeled_block, pop_labeled_block): Remove.
1414         (LABELED_BLOCK_LABEL, LABELED_BLOCK_BODY,
1415         EXIT_BLOCK_LABELED_BLOCK): Likewise.
1416         * lang.c (java_tree_inlining_walk_subtrees): Update.
1417         (java_dump_tree): Likewise.
1418         * java-tree.def (LABELED_BLOCK_EXPR, EXIT_BLOCK_EXPR, TRY_EXPR):
1419         Remove.
1420         * decl.c (push_labeled_block, pop_labeled_block): Remove.
1421         * java-gimplify.c (java_gimplify_labeled_block_expr,
1422         java_gimplify_exit_block_expr, java_gimplify_try_expr): Remove.
1423         (java_gimplify_expr): Update.
1424
1425 2007-07-25  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1426
1427         * class.c (java_treetreehash_hash, java_treetreehash_compare):
1428         Constify. 
1429         * expr.c (type_assertion_eq): Likewise.
1430         * jcf-io.c (compare_path): Likewise.
1431         * jcf-parse.c (cmpstringp): Likewise.
1432         * verify-impl.c (get_one_type, compute_argument_types,
1433         compute_return_type): Likewise. 
1434
1435 2007-07-16  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1436
1437         PR target/32462
1438         PR libgcj/32465
1439         * class.c (hide): Wrap in HAVE_GAS_HIDDEN.
1440
1441 2007-07-12  Richard Guenther  <rguenther@suse.de>
1442
1443         * expr.c (expand_java_return): RETURN_EXPR has void type.
1444         (build_jni_stub): Likewise.  Use a comparison against zero
1445         for null-pointer test in COND_EXPR.
1446         (build_field_ref): Build POINTER_PLUS_EXPR with correct
1447         type.  Convert result instead.
1448         (build_invokevirtual): Likewise.
1449
1450 2007-07-09  Geoffrey Keating  <geoffk@apple.com>
1451
1452         PR 32617
1453         * lang.c (java_init): Remove setting of force_align_functions_log.
1454         * class.c (add_method_1): Set DECL_ALIGN of non-static method
1455         to cope with ptrmemfunc_vbit_in_pfn.
1456
1457 2007-07-03  David Daney  <ddaney@avtrex.com>
1458
1459         * java/Make-lang.in (doc/gcj.info): Add $(gcc_docdir) to 
1460         include path.
1461         (doc/gcj.dvi): Same.
1462         (doc/gcj.pdf): Same.
1463         (java/index.html): Same.
1464
1465 2007-06-15 Andrew Pinski  <andrew_pinski@playstation.sony.com>
1466
1467         * class.c (make_class_data): Build the index in sizetype.
1468         Use POINTER_PLUS_EXPR instead of PLUS_EXPR when
1469         adding to a pointer type.
1470         (build_symbol_entry): Likewise.
1471         * expr.c (build_java_arrayaccess): Likewise.
1472         (build_field_ref): Likewise.
1473         (build_known_method_ref): Likewise.
1474         (build_invokevirtual): Likewise.
1475         * except.c (build_exception_object_ref): Do a
1476         NEGATIVE and then a POINTER_PLUS_EXPR instead
1477         of a MINUS_EXPR.
1478
1479 2007-06-11  Rafael Ávila de Espíndola  <espindola@google.com>
1480
1481         * typeck.c (java_signed_type): Remove.
1482         * lang.c (LANG_HOOKS_SIGNED_TYPE): Remove.
1483         * java-tree.h (java_signed_type): Remove.
1484
1485 2007-05-18  Geoffrey Keating  <geoffk@apple.com>
1486
1487         * jcf-dump.c (HANDLE_MAGIC): Use 'unsigned long' for %lx.
1488         (print_constant): Likewise.
1489
1490 2007-05-14  Rafael Ávila de Espíndola  <espindola@google.com>
1491
1492         * expr.c (build_java_binop): Use unsigned_type_for instead of
1493         java_unsigned_type.
1494         * java-tree.h (java_unsigned_type): Remove.
1495         * lang.c (LANG_HOOKS_UNSIGNED_TYPE): Remove.
1496         * typeck.c (java_unsigned_type): Remove.
1497
1498 2007-04-21  Andrew Pinski  <andrew_pinski@playstation.sony.com>
1499
1500         * java-tree.h (lang_tree_node): Use GENERIC_NEXT
1501         instead of checking GIMPLE_STMT_P in chain_next.
1502
1503 2007-04-06  Colin Walters  <walters@redhat.com>
1504
1505         https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=161701
1506         * jcf-io.c (open_class): Copy 'filename'.
1507
1508 2007-04-03  Andrew Haley  <aph@redhat.com>
1509
1510         * jvgenmain.c (main): Change main to use class$, not class$$.
1511         (do_mangle_classname): Likewise.
1512         * class.c (hide): New function.
1513         (add_field): Hide everything that shouldn't be visible outside a
1514         DSO.
1515         (build_static_class_ref): Likewise.
1516         (build_classdollar_field): Likewise.
1517         (make_class_data): Likewise.
1518         (layout_class_method): Likewise.
1519         * expr.c (special_method_p): New function.
1520
1521         * class.c (push_class): Don't bogusly guess the source filename.
1522         * jcf-parse.c (give_name_to_class): Don't set input_location from
1523         DECL_ARTIFICIAL decls.
1524
1525 2007-03-30  Rafael Ávila de Espíndola  <espindola@google.com>
1526
1527         * typeck.c (java_signed_or_unsigned_type): Removed.
1528         (java_signed_type): use get_signed_or_unsigned_type instead of
1529         java_signed_or_unsigned_type.
1530         (java_unsigned_type): Ditto.
1531         * lang.c (LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): Removed.
1532         * java-tree.h (java_signed_or_unsigned_type): Removed.
1533
1534 2007-03-26  Tom Tromey  <tromey@redhat.com>
1535
1536         * Make-lang.in (JAVA_MANFILES): Removed grmiregistry.1.
1537         (java.maintainer-clean): Likewise.
1538         (java.install-man): Likewise.
1539         (.INTERMEDIATE): Removed grmiregistry.pod.
1540         (grmiregistry.pod): Removed.
1541         * gcj.texi (Invoking gcjh): Removed.
1542         (Invoking gjnih): Likewise.
1543         (Invoking grmiregistry): Likewise.
1544         (direntry): Updated.
1545         (Top): Likewise.
1546         (which-gcj): Removed.
1547
1548 2007-03-01  Brooks Moses  <brooks.moses@codesourcery.com>
1549
1550         * Make-lang.in: Add install-pdf target as copied from
1551         automake v1.10 rules.
1552
1553 2007-02-27  Brooks Moses  <brooks.moses@codesourcery.com>
1554
1555         * gcj.texi: Standardize title page.
1556
1557 2007-02-18  Kazu Hirata  <kazu@codesourcery.com>
1558
1559         * class.c: Fix a comment typo.
1560
1561 2007-02-15  Sandra Loosemore  <sandra@codesourcery.com>
1562             Brooks Moses  <brooks.moses@codesourcery.com>
1563             Lee Millward  <lee.millward@codesourcery.com>
1564
1565         * java-tree.h (BUILD_MONITOR_ENTER): Use build_call_nary instead
1566         of build3.
1567         (BUILD_MONITOR_EXIT): Likewise.
1568
1569         * java-gimplify.c (java_gimplify_component_ref): Use build_call_expr.
1570         (java_gimplify_modify_expr): Likewise.
1571
1572         * class.c (cache_this_class_ref): Use build_call_expr.
1573         (build_static_field_ref): Likewise.
1574         (emit_indirect_register_classes): Likewise.
1575         (emit_register_classes): Likewise.
1576
1577         * resource.c (write_resource_constructor): Use build_call_expr.
1578
1579         * builtins.c (builtin_creator_function): Change interpretation of
1580         the second parameter to be the whole CALL_EXPR instead of the arglist.
1581         (max_builtin): Tweak parameter list.  Use new CALL_EXPR accessors.
1582         (min_builtin): Likewise.
1583         (abs_builtin): Likewise.
1584         (java_build_function_call_expr): Likewise.
1585         (convert_real): Likewise.
1586         (UNMARSHAL3): Likewise.
1587         (UNMARSHAL4): Likewise.
1588         (UNMARSHAL5): Likewise.
1589         (build_arglist_for_builtin): Delete.  Fix callers to use
1590         build_call_expr instead.
1591         (putObject_builtin): Tweak parameter list.  Use new CALL_EXPR
1592         accessors.
1593         (compareAndSwapInt_builtin): Likewise.
1594         (compareAndSwapLong_builtin): Likewise.
1595         (compareAndSwapObject_builtin): Likewise.
1596         (putVolatile_builtin): Likewise.
1597         (getVolatile_builtin): Likewise.
1598         (VMSupportsCS8_builtin): Likewise.
1599         (check_for_builtin): Pass entire CALL_EXPR to builtin expander
1600         instead of arglist.
1601
1602         * expr.c (build_java_athrow): Use build_call_nary instead of build3.
1603         (build_java_throw_out_of_bounds_exception): Likewise.
1604         (java_check_reference): Likewise.
1605         (build_java_arraystore_check): Likewise.
1606         (build_newarray): Likewise.
1607         (build_anewarray): Likewise.
1608         (expand_java_multinewarray): Use build_call_list instead of build3.
1609         (build_java_monitor): Use build_call_nary instead of build3.
1610         (java_create_object): Likewise.
1611         (expand_java_NEW): Likewise.
1612         (build_instanceof): Likewise.
1613         (expand_java_CHECKCAST): Likewise.
1614         (build_java_soft_divmod): Likewise.
1615         (build_java_binop): Likewise.
1616         (build_field_ref): Likewise.
1617         (build_class_init): Likewise.
1618         (rewrite_arglist_getcaller): Use build_call_expr.
1619         (build_invokeinterface):  Use build_call_nary instead of build3.
1620         (expand_invoke): Use build_call_list instead of build3.
1621         (build_jni_stub): Use build_call_nary, build_call_list, or
1622         build_call_expr instead of build3.
1623         (expand_java_field_op): Use build_call_expr instead of build3.
1624         (force_evaluation_order): Use new CALL_EXPR accessors.
1625
1626         * lang.c (java_get_callee_fndecl): Use new CALL_EXPR accessors.
1627
1628 2007-02-15  David Daney  <ddaney@avtrex.com>
1629
1630         * Make-lang.in (JAVA_MANFILES): Add doc/gc-analyze.1.
1631         (java.maintainer-clean):Add gc-analyze.1.
1632         (.INTERMEDIATE): Add gc-analyze.pod.
1633         (gc-analyze.pod): New rule.
1634         (java.install-man): Install gc-analyze.1
1635         * gcj.texi: Add new section for the gc-analyze program.
1636
1637 2007-02-07  Andrew Haley  <aph@redhat.com>
1638
1639         * class.c (uncache_this_class_ref): New.
1640         * expr.c (build_jni_stub): Initialize the class.
1641         (expand_byte_code): Call uncache_this_class_ref after generating
1642         code.
1643
1644 2007-02-06  Tom Tromey  <tromey@redhat.com>
1645
1646         PR java/30714:
1647         * jvspec.c (lang_specific_driver): Check for the '-' in '-I'.
1648
1649 2007-02-03  Kazu Hirata  <kazu@codesourcery.com>
1650
1651         * java-tree.h, javaop.def, jcf-parse.c: Fix comment typos.
1652
1653 2007-02-02  Andrew Haley  <aph@redhat.com>
1654
1655         * expr.c (expand_byte_code): Call cache_this_class_ref() and
1656         cache_cpool_data_ref().
1657         Set TYPE_CPOOL_DATA_REF.
1658         (cache_cpool_data_ref): New function.
1659         * constants.c (build_ref_from_constant_pool): Remove special-case
1660         code for flag_indirect_classes.
1661         (build_constant_data_ref): Move special-case code for
1662         flag_indirect_classes here from build_ref_from_constant_pool.
1663         * decl.c (finish_method): Move class initialization from here to
1664         cache_this_class_ref.
1665         * class.c (cache_this_class_ref): New function.
1666         (build_class_ref): Use this_classdollar for the ouput class.
1667
1668 2007-02-02  David Daney  <ddaney@avtrex.com>
1669
1670         * class.c (is_compiled_class): Move check to avoid reloading
1671         current class.
1672         (layout_class_method): Don't calculate DECL_EXTERNAL if it is
1673         already set.
1674
1675 2007-02-01  Andrew Haley  <aph@redhat.com>
1676
1677         PR java/30641
1678         * jcf-parse.c (jcf_parse): Clear the field_offsets bitmap.
1679
1680 2007-01-31  Kazu Hirata  <kazu@codesourcery.com>
1681
1682         * class.c, jcf-parse.c: Fix comment typos.
1683
1684 2007-01-30  Tom Tromey  <tromey@redhat.com>
1685
1686         * gcj.texi (Strings): Fix documentation for JvNewString.
1687
1688 2007-01-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1689
1690         * gcj.texi (Invoking gcjh, Invoking gjnih, Arrays): Fix some
1691         typos.
1692
1693 2007-01-30  Ben Elliston  <bje@au.ibm.com>
1694
1695         * jvspec.c (lang_specific_driver): Remove unused classpath_args.
1696
1697 2007-01-29  Tom Tromey  <tromey@redhat.com>
1698
1699         PR java/30607:
1700         * jvspec.c (lang_specific_driver): Handle separate -I argument.
1701         * lang.opt (-I): Add 'Separate'.
1702
1703 2007-01-29  Andrew Haley  <aph@redhat.com>
1704
1705         * class.c (add_method_1): Mark fndecl as external unless we are
1706         compiling it into this object file.
1707
1708 2007-01-24  Andrew Haley  <aph@redhat.com>
1709
1710         * jcf-parse.c (HANDLE_SYNTHETIC_ATTRIBUTE): current_class is a
1711         type node, not a decl, so use TYPE_SYNTHETIC not CLASS_SYNTHETIC.
1712
1713 2007-01-22  Andrew Haley  <aph@redhat.com>
1714
1715         * builtins.c (VMSupportsCS8_builtin): New function.
1716
1717 2007-01-23  Andrew Pinski  <pinskia@gmail.com>
1718
1719         PR java/30454
1720         * jcf-io.c (opendir_in_zip): Close the file
1721         and free zipf before returning after an error.
1722
1723 2007-01-16  Tom Tromey  <tromey@redhat.com>
1724
1725         * java-tree.def: Added copyright header.
1726
1727 2007-01-15  Tom Tromey  <tromey@redhat.com>
1728
1729         * lang.c (dump_compound_expr) <EXPR_WITH_FILE_LOCATION>: Removed
1730         case.
1731         * java-gimplify.c (java_gimplify_expr) <EXPR_WITH_FILE_LOCATION>:
1732         Removed case.
1733         * java-tree.h (EXPR_WFL_EMIT_LINE_NOTE): Removed.
1734         (EXPR_WFL_NODE): Likewise.
1735         (EXPR_WFL_LINECOL): Likewise.
1736         (EXPR_WFL_FILENAME): Likewise.
1737         (EXPR_WFL_LINENO): Likewise.
1738         (build_expr_wfl, expr_add_location): Don't declare.
1739         (build_unknown_wfl): Removed.
1740         (EXPR_WFL_FILENAME_NODE): Removed.
1741         (EXPR_WFL_COLNO): Removed.
1742         (EXPR_WFL_SET_LINECOL): Removed.
1743         (DECL_FUNCTION_WFL): Removed.
1744         (DECL_FIELD_FINAL_WFL): Removed.
1745         (struct lang_decl_func) <wfl>: Removed field.
1746         <called_constructor>: Likewise.
1747         <inner_access>: Likewise.
1748         (struct lang_decl_var) <wfl>: Removed field.
1749         (DECL_CONSTRUCTOR_CALLS): Removed.
1750         (DECL_FUNCTION_ACCESS_DECL): Likewise.
1751         (DECL_FUNCTION_INNER_ACCESS): Likewise.
1752         (DECL_SPECIFIC_COUNT): Likewise.
1753         * java-tree.def (EXPR_WITH_FILE_LOCATION): Removed.
1754         * expr.c (build_expr_wfl): Removed.
1755         (expr_add_location): Likewise.
1756
1757 2007-01-12  Tom Tromey  <tromey@redhat.com>
1758
1759         * jcf-dump.c (main): Updated call to find_class.
1760         * lang.c (java_init): Removed dead code.
1761         * jcf-parse.c (read_class): Don't use java_source field.  Removed
1762         dead code.
1763         (parse_zip_file_entries): Don't use java_source field.
1764         (process_zip_dir): Likewise.
1765         (jcf_parse): Removed dead code.
1766         (java_parse_file): Likewise.
1767         (read_class): Updated call to find_class.
1768         * jcf-io.c (find_class): Don't use java_source field.  Removed
1769         'source_ok' argument, .java logic.
1770         * jcf.h (JCF) <java_source>: Removed field.
1771         (JCF_ZERO): Updated.    (find_class): Updated.
1772         * decl.c: Removed dead code.
1773         * class.c: Removed dead code.
1774
1775 2007-01-11  Tom Tromey  <tromey@redhat.com>
1776
1777         * typeck.c (convert): Don't use flag_emit_class_files.
1778         * lang.c (java_post_options): Don't use flag_emit_class_files.
1779         (java_handle_option): Don't use flag_extraneous_semicolon or
1780         flag_redundant.
1781         * jcf-parse.c (HANDLE_CONSTANTVALUE): Don't use
1782         flag_emit_class_files.
1783         (load_class): Likewise.
1784         * java-tree.h (flag_emit_class_files): Don't declare.
1785         (STATIC_CLASS_INIT_OPT_P): Don't use flag_emit_class_files.
1786         (flag_extraneous_semicolon): Don't declare.
1787         (flag_not_overriding): Likewise.
1788         (flag_static_local_jdk1_1): Likewise.
1789         (flag_redundant): Likewise.
1790         * expr.c (build_newarray): Don't use flag_emit_class_files.
1791         * class.c (DEFAULT_ENABLE_ASSERT): Don't use
1792         flag_emit_class_files.
1793         (build_class_ref): Likewise.
1794         * builtins.c (check_for_builtin): Don't use
1795         flag_emit_class_files.
1796
1797 2007-01-10  Tom Tromey  <tromey@redhat.com>
1798
1799         * lang.c (java_can_use_bit_fields_p): Removed.
1800         (LANG_HOOKS_CAN_USE_BIT_FIELDS_P): Removed.
1801
1802 2007-01-09  Andrew Haley  <aph@redhat.com>
1803
1804         * expr.c (build_java_arrayaccess): Rewrite to generate array
1805         access in canonical form.
1806         (expand_java_arraystore): Use build_fold_addr_expr() on address of
1807         array access.
1808
1809 2007-01-03  Andrew Haley  <aph@redhat.com>
1810
1811         PR java/28754
1812         * expr.c (expand_java_field_op): If we're initializing a field's
1813         declaring interface we should not also initialize the class
1814         context in which it was referenced.
1815
1816 2007-01-02  Tom Tromey  <tromey@redhat.com>
1817
1818         * java-tree.h (compiling_from_source, current_encoding,
1819         JTI_FINIT_IDENTIFIER_NODE, JTI_INSTINIT_IDENTIFIER_NODE,
1820         JTI_LENGTH_IDENTIFIER_NODE, JTI_SUPER_IDENTIFIER_NODE,
1821         JTI_CONTINUE_IDENTIFIER_NODE, JTI_ACCESS0_IDENTIFIER_NODE,
1822         JTI_WFL_OPERATOR): Removed
1823         (finit_identifier_node, instinit_identifier_node,
1824         length_identifier_node, super_identifier_node,
1825         continue_identifier_node, access0_identifier_node, wfl_operator):
1826         Removed.
1827         (cyclic_inheritance_report,
1828         DECL_FUNCTION_STATIC_METHOD_INVOCATION_COMPOUND,
1829         DECL_FUNCTION_NAP, DECL_FUNCTION_SYNTHETIC_CTOR,
1830         DECL_FIXED_CONSTRUCTOR_P): Removed.
1831         (struct lang_decl_func) <smic, nap, synthetic_ctor, fixed_ctor>:
1832         Removed.
1833         (TYPE_FINIT_STMT_LIST, TYPE_CLINIT_STMT_LIST, TYPE_II_STMT_LIST,
1834         TYPE_IMPORT_LIST, TYPE_IMPORT_DEMAND_LIST): Removed.
1835         (struct lang_type) <finit_stmt_list, clinit_stmt_list, ii_block,
1836         import_list, import_demand_list>: Removed.
1837         (java_layout_seen_class_methods, init_jcf_parse, init_src_parse,
1838         cxx_keyword_p): Removed.
1839         (DECL_FINIT_P, DECL_INSTINIT_P, ID_FINIT_P, ID_INSTINIT_P,
1840         TYPE_UNUSED, TYPE_UNDERFLOW, TYPE_UNEXPECTED,
1841         CLASS_ACCESS0_GENERATED_P, CLASS_HAS_FINIT_P,
1842         IS_A_SINGLE_IMPORT_CLASSFILE_NAME_P, IS_A_CLASSFILE_NAME,
1843         IS_AN_IMPORT_ON_DEMAND_P, COMPOUND_ASSIGN_P, SWITCH_HAS_DEFAULT,
1844         PRIMARY_P, MODIFY_EXPR_FROM_INITIALIZATION_P,
1845         CLASS_METHOD_CHECKED_P, FOR_LOOP_P, ANONYMOUS_CLASS_P,
1846         LOCAL_CLASS_P, ARG_FINAL_P, SUPPRESS_UNREACHABLE_ERROR,
1847         RESOLVE_PACKAGE_NAME_P, RESOLVE_TYPE_NAME_P, IS_BREAK_STMT_P,
1848         IS_CRAFTED_STRING_BUFFER_P, IS_INIT_CHECKED, CALL_USING_SUPER,
1849         NESTED_FIELD_ACCESS_IDENTIFIER_P, TOPLEVEL_CLASS_DECL_P,
1850         PURE_INNER_CLASS_TYPE_P, TOPLEVEL_CLASS_TYPE_P,
1851         CALL_CONSTRUCTOR_P, CALL_EXPLICIT_CONSTRUCTOR_P,
1852         CALL_THIS_CONSTRUCTOR_P, CALL_SUPER_CONSTRUCTOR_P,
1853         FINALLY_EXPR_LABEL, FINALLY_EXPR_BLOCK, BLOCK_IS_IMPLICIT,
1854         BLOCK_EMPTY_P, IS_UNCHECKED_EXCEPTION_P, java_error_count,
1855         java_parse_abort_on_error, extract_field_decl): Removed.
1856         (finput): Declare.
1857         * lang.c: (compiling_from_source, current_encoding): Removed.
1858         (java_handle_option): Ignore -fencoding.
1859         * parse.h: Don't include lex.h.
1860         (java_error_count, int_fits_type_p, stabilize_reference, RULE,
1861         RECOVERED, DRECOVERED, RECOVER, DRECOVER, YYERROR_NOW,
1862         YYNOT_TWICE, CLASS_MODIFIERS, FIELD_MODIFIERS, METHOD_MODIFIERS,
1863         INTERFACE_MODIFIERS, INTERFACE_INNER_MODIFIERS,
1864         INTERFACE_METHOD_MODIFIERS, INTERFACE_FIELD_MODIFIERS,
1865         MODIFIER_WFL, THIS_MODIFIER_ONLY, parse_error_context,
1866         ABSTRACT_CHECK, JCONSTRUCTOR_CHECK, exit_java_complete_class,
1867         CLASS_OR_INTERFACE, GET_REAL_TYPE, GET_TYPE_NAME,
1868         OBSOLETE_MODIFIER_WARNING, OBSOLETE_MODIFIER_WARNING2,
1869         BUILD_PTR_FROM_NAME, INCOMPLETE_TYPE_P,
1870         JAVA_MAYBE_GENERATE_DEBUG_INFO, JBSC_TYPE_P, JSTRING_P,
1871         JNULLP_TYPE_P, JDECL_P, TYPE_INTERFACE_P, TYPE_CLASS_P,
1872         IDENTIFIER_INNER_CLASS_OUTER_FIELD_ACCESS,
1873         MANGLE_OUTER_LOCAL_VARIABLE_NAME,
1874         MANGLE_ALIAS_INITIALIZER_PARAMETER_NAME_ID,
1875         MANGLE_ALIAS_INITIALIZER_PARAMETER_NAME_STRING,
1876         SKIP_THIS_AND_ARTIFICIAL_PARMS, MARK_FINAL_PARMS,
1877         UNMARK_FINAL_PARMS, CRAFTED_PARAM_LIST_FIXUP,
1878         AIPL_FUNCTION_CREATION, AIPL_FUNCTION_DECLARATION,
1879         AIPL_FUNCTION_CTOR_INVOCATION, AIPL_FUNCTION_FINIT_INVOCATION,
1880         ERROR_CANT_CONVERT_TO_BOOLEAN, ERROR_CANT_CONVERT_TO_NUMERIC,
1881         ERROR_CAST_NEEDED_TO_INTEGRAL, ERROR_VARIABLE_NOT_INITIALIZED,
1882         LOOP_EXPR_BODY_MAIN_BLOCK, LOOP_EXPR_BODY_UPDATE_BLOCK,
1883         LOOP_EXPR_BODY_CONDITION_EXPR, LOOP_EXPR_BODY_LABELED_BODY,
1884         LOOP_EXPR_BODY_BODY_EXPR, PUSH_LABELED_BLOCK, POP_LABELED_BLOCK,
1885         PUSH_LOOP, POP_LOOP, PUSH_EXCEPTIONS, POP_EXCEPTIONS,
1886         IN_TRY_BLOCK_P, EXCEPTIONS_P, ANONYMOUS_ARRAY_BASE_TYPE,
1887         ANONYMOUS_ARRAY_DIMS_SIG, ANONYMOUS_ARRAY_INITIALIZER,
1888         INVOKE_STATIC, INVOKE_NONVIRTUAL, INVOKE_SUPER, INVOKE_INTERFACE,
1889         INVOKE_VIRTUAL, jdep_code, struct _jdep, JDEP_DECL, JDEP_DECL_WFL,
1890         JDEP_KIND, JDEP_WFL, JDEP_MISC, JDEP_ENCLOSING, JDEP_CLASS,
1891         JDEP_APPLY_PATCH, JDEP_GET_PATCH, JDEP_CHAIN, JDEP_TO_RESOLVE,
1892         JDEP_RESOLVED_DECL, JDEP_RESOLVED, JDEP_RESOLVED_P, struct
1893         jdeplist_s, jdeplists, CLASSD_FIRST, CLASSD_LAST, CLASSD_CHAIN,
1894         JDEP_INSERT, SET_TYPE_FOR_RESOLUTION, WFL_STRIP_BRACKET,
1895         STRING_STRIP_BRACKETS, PROMOTE_RECORD_IF_COMPLETE,
1896         BLOCK_CHAIN_DECL, GET_CURRENT_BLOCK, EXPR_WFL_GET_LINECOL,
1897         EXPR_WFL_QUALIFICATION, QUAL_WFL, QUAL_RESOLUTION, QUAL_DECL_TYPE,
1898         GET_SKIP_TYPE, COMPLETE_CHECK_OP, COMPLETE_CHECK_OP_0,
1899         COMPLETE_CHECK_OP_1, COMPLETE_CHECK_OP_2, BUILD_APPEND,
1900         BUILD_STRING_BUFFER, BUILD_THROW, SET_WFL_OPERATOR,
1901         PATCH_METHOD_RETURN_ERROR, CHECK_METHODS, CLEAR_DEPRECATED,
1902         CHECK_DEPRECATED_NO_RESET, CHECK_DEPRECATED, REGISTER_IMPORT,
1903         CURRENT_OSB, struct parser_ctxt, GET_CPC_LIST, CPC_INNER_P,
1904         GET_CPC, GET_CPC_UN, GET_CPC_UN_MODE, GET_CPC_DECL_NODE,
1905         GET_ENCLOSING_CPC, GET_NEXT_ENCLOSING_CPC,
1906         GET_ENCLOSING_CPC_CONTEXT, INNER_ENCLOSING_SCOPE_CHECK, PUSH_CPC,
1907         PUSH_ERROR, POP_CPC, DEBUG_CPC, CPC_INITIALIZER_LIST,
1908         CPC_STATIC_INITIALIZER_LIST, CPC_INSTANCE_INITIALIZER_LIST,
1909         CPC_INITIALIZER_STMT, CPC_STATIC_INITIALIZER_STMT,
1910         CPC_INSTANCE_INITIALIZER_STMT, SET_CPC_INITIALIZER_STMT,
1911         SET_CPC_STATIC_INITIALIZER_STMT,
1912         SET_CPC_INSTANCE_INITIALIZER_STMT, JAVA_NOT_RADIX10_FLAG,
1913         java_complete_class, java_check_circular_reference,
1914         java_fix_constructors, java_layout_classes, java_reorder_fields,
1915         java_method_add_stmt, java_get_line_col, reset_report,
1916         java_init_lex, yyparse, java_parse, yyerror, java_expand_classes,
1917         java_finish_classes, ctxp, ctxp_for_generation,
1918         ctxp_for_generation_last): Removed.
1919         * expr.c (force_evaluation_order): Don't mention NEW_CLASS_EXPR.
1920         * mangle.c (utf8_cmp): New function.
1921         (cxx_keywords): New global.
1922         (cxx_keyword_p): New function.
1923         * jvspec.c (JAVA_START_CHAR): Removed obsolete comment.
1924         * java-tree.def (UNARY_PLUS_EXPR, NEW_ARRAY_EXPR,
1925         NEW_ANONYMOUS_ARRAY_EXPR, NEW_CLASS_EXPR, THIS_EXPR,
1926         CASE_EXPR, DEFAULT_EXPR, JAVA_CATCH_EXPR, SYNCHRONIZED_EXPR,
1927         THROW_EXPR, CONDITIONAL_EXPR, INSTANCEOF_EXPR, NEW_ARRAY_INIT,
1928         CLASS_LITERAL, JAVA_EXC_OBJ_EXPR): Removed.
1929         * Make-lang.in (java.srcextra): Do nothing.
1930         (parse.c, keyword.h, gt-java-parse.h): Removed targets.
1931         (JAVA_OBJS): Don't mention deleted files.
1932         (java.mostlyclean): Likewise.
1933         (java.clean): Likewise.
1934         (JAVA_LEX_C): Removed.
1935         (buffer.o, check-init.o, parse.o): Remove unused targets.
1936         (typeck.o): Updated.
1937         * jcf-parse.c (read_class): Comment out unused code.
1938         (java_layout_seen_class_methods): New function.
1939         (parse_source_file_1, parse_source_file_2, parse_source_file_3):
1940         Removed.
1941         (java_parse_file): Comment out unused code.  Don't use 'ctxp'.
1942         (init_jcf_parse): Removed.
1943         * config-lang.in (gtfiles): Remove deleted files.
1944         * decl.c (java_init_decl_processing): Don't initialize
1945         finit_identifier_node, instinit_identifier_node,
1946         length_identifier_node, super_identifier_node,
1947         continue_identifier_node, access0_identifier_node.  Don't call
1948         init_jcf_parse.
1949         * class.c (cyclic_inheritance_report): New global.
1950         (add_method_1): Don't use
1951         DECL_FUNCTION_STATIC_METHOD_INVOCATION_COMPOUND.
1952         (maybe_layout_super_class): Comment out code.
1953         (safe_layout_class): New function.
1954         * java-gimplify.c (java_gimplify_expr): Removed CASE_EXPR,
1955         DEFAULT_EXPR, NEW_ARRAY_INIT, JAVA_CATCH_EXPR, JAVA_EXC_OBJ_EXPR,
1956         UNARY_PLUS_EXPR, NEW_ARRAY_EXPR, NEW_ANONYMOUS_ARRAY_EXPR,
1957         NEW_CLASS_EXPR, SYNCHRONIZED_EXPR, CONDITIONAL_EXPR,
1958         INSTANCEOF_EXPR, CLASS_LITERAL, THIS_EXPR.
1959         (java_gimplify_case_expr): Removed.
1960         (java_gimplify_default_expr): Likewise.
1961         (java_gimplify_new_array_init): Likewise.
1962         * parse.y: Removed.
1963         * keyword.gperf, keyword.h: Removed.
1964         * chartables.h: Removed.
1965         * check-init.c: Removed.
1966         * buffer.c, buffer.h: Removed.
1967         * convert.h: Removed.
1968         * gen-table.pl: Removed.
1969         * lex.c, lex.h: Removed.
1970
1971 2007-01-02  Andrew Haley  <aph@redhat.com>
1972
1973         * expr.c (expand_java_arraystore): Make sure we perform a bounds
1974         check at runtime before we perform a type check.
1975
1976 2006-12-19  Andrew Haley  <aph@redhat.com>
1977
1978         * decl.c: Bump minor BC ABI version.
1979
1980 2006-12-13  Gary Benson  <gbenson@redhat.com>
1981
1982         * jcf-depend.c (jcf_dependency_add_file): Mark filename unused.
1983
1984 2006-12-12  Tom Tromey  <tromey@redhat.com>
1985
1986         * lang-specs.h: Pass -M options to jc1.
1987         * jcf-depend.c (jcf_dependency_add_file): Don't emit
1988         dependencies.
1989
1990 2006-12-07  Mohan Embar  <gnustuff@thisiscool.com>
1991
1992         * jcf-path.c (jcf_path_compute): Use platform PATH_SEPARATOR.
1993
1994 2006-12-06  Mohan Embar  <gnustuff@thisiscool.com>
1995
1996         * lang-specs.h: Pass '%U'-based options as separate arguments.
1997
1998 2006-12-05  Tom Tromey  <tromey@redhat.com>
1999
2000         PR java/29495:
2001         * jcf-parse.c (HANDLE_SYNTHETIC_ATTRIBUTE): Mark fields and
2002         classes as well.
2003         * class.c (add_field): Handle ACC_SYNTHETIC.
2004         (add_method_1): Likewise.  Handle bridge and varargs.
2005         (get_access_flags_from_decl): Handle synthetic, bridge, varargs,
2006         annotation.
2007         (set_class_decl_access_flags): Handle synthetic and annotation.
2008         * java-tree.h (METHOD_BRIDGE): New macro.
2009         (METHOD_VARARGS): Likewise.
2010         (TYPE_SYNTHETIC): Likewise.
2011         (TYPE_ANNOTATION): Likewise.
2012         (lang_type): New fields 'synthetic' and 'annotation'.
2013         (lang_decl_func): New fields 'varargs' and 'bridge'.
2014
2015 2006-12-04  Andrew Haley  <aph@redhat.com>
2016
2017         * jcf-parse.c (rewrite_reflection_indexes): Don't do anything if
2018         there's no map.
2019
2020 2006-11-29  Gary Benson  <gbenson@redhat.com>
2021
2022         * expr.c (rewrite_arglist_getcaller): Reorder.
2023
2024 2006-11-29  Andrew Haley  <aph@redhat.com>
2025
2026         * expr.c (rewrite_arglist_getcaller): Remove DECL_INLINE.
2027         * lang.c (java_decl_ok_for_sibcall): Check for DECL_INLINE.
2028
2029 2006-11-23  Andrew Haley  <aph@redhat.com>
2030
2031         * expr.c (rewrite_arglist_getcaller): New.
2032         (rewrite_arglist_getclass): Fix indentation.
2033         (rules): Add gnu.classpath.VMStackWalker.getCallingClass() and 
2034         gnu.classpath.VMStackWalker.getCallingClassLoader().
2035         * builtins.c (initialize_builtins): Remove duplicate def'n of
2036         __sync_synchronize.
2037         Add __builtin_return_address.
2038
2039 2006-11-22  Andrew Haley  <aph@redhat.com>
2040
2041         * jcf-reader.c (get_attribute): Mark attr_type unused.
2042
2043         * builtins.c (compareAndSwapObject_builtin): Fix declaration.
2044
2045 2007-01-08  Richard Guenther  <rguenther@suse.de>
2046
2047         * lex.c (do_java_lex): Use build_int_cst_wide_type.
2048         * jcf-parse.c (get_constant): Likewise.
2049
2050 2006-11-12  Jan Hubicka  <jh@suse.cz>
2051
2052         * resource.c (compile_resource_data): Update for new varpool names.
2053         * java/class.c (build_utf8_ref): Likewise.
2054
2055 2006-11-12  David Daney  <ddaney@avtrex.com>
2056
2057         PR java/29805
2058         * typeck.c (build_java_array_type): Increase buffer sizes.
2059
2060 2006-11-11  Richard Guenther  <rguenther@suse.de>
2061
2062         * check-init.c (check_init): Remove handling of FIX_CEIL_EXPR,
2063         FIX_FLOOR_EXPR and FIX_ROUND_EXPR.
2064
2065 2006-11-06  Andrew Haley  <aph@redhat.com>
2066
2067         * java-tree.h (CONSTANT_LazyFlag): New.
2068         * constants.c (build_constants_constructor): Mask CONSTANT_LazyFlag.
2069         * jcf-parse.c (handle_innerclass_attribute): Write attribute to
2070         reflection_data.
2071         (handle_constant): Return 0 for dummy cpool entries.
2072         Handle constants of kind Class.
2073         Handle constants of kind NameAndType.
2074         (handle_enclosingmethod_attribute): New.
2075         (handle_signature_attribute): New.
2076         (HANDLE_ENCLOSINGMETHOD_ATTRIBUTE): New.
2077         (HANDLE_SIGNATURE_ATTRIBUTE): New.
2078         (handle_constant): Use unmangle_classname()rather than calling
2079         identifier_subst() directly.
2080
2081 2006-11-02  Andrew Haley  <aph@redhat.com>
2082
2083         * java-tree.h (FIELD_ENUM): New.
2084         (lang_decl_var.field_enum): New.
2085         (lang_type.enum_class): New.
2086         (CLASS_ENUM): New.
2087         * class.c (set_class_decl_access_flags): Handle enum types.
2088         (add_field): Handle enum fields.
2089         (get_access_flags_from_decl): Likewise.
2090
2091         * class.c (make_class_data): Put reflection_data into rodata.
2092
2093 2006-11-01  Andrew Haley  <aph@redhat.com>
2094
2095         * jcf-parse.c (field_offsets, bit_obstack): New variables.
2096         (jcf_parse): Write end marker to annotation_data.
2097         (java_parse_file): Create field_offsets bitmap.  Destroy it.
2098         (annotation_grow, annotation_rewrite_byte) 
2099         (annotation_rewrite_short, annotation_rewrite_int) 
2100         (annotation_read_short, annotation_write_byte) 
2101         (annotation_write_short, annotation_write_int) 
2102         (handle_long_constant, handle_constant, handle_element_value) 
2103         (handle_annotation, handle_annotations) 
2104         (handle_annotation_attribute, rewrite_reflection_indexes) 
2105         (handle_member_annotations, handle_parameter_annotations) 
2106         (handle_default_annotation): New functions.
2107         (HANDLE_RUNTIMEVISIBLEANNOTATIONS_ATTRIBUTE) 
2108         (HANDLE_RUNTIMEINVISIBLEANNOTATIONS_ATTRIBUTE) 
2109         (HANDLE_RUNTIMEVISIBLEPARAMETERANNOTATIONS_ATTRIBUTE) 
2110         (HANDLE_RUNTIMEINVISIBLEPARAMETERANNOTATIONS_ATTRIBUTE) 
2111         (HANDLE_ANNOTATIONDEFAULT_ATTRIBUTE): New definitions.
2112         * java-tree.h (enum jv_attr_type, enum jv_attr_kind): New. 
2113         (TYPE_REFLECTION_DATA): New.
2114         (TYPE_REFLECTION_DATASIZE): New.
2115         * jcf.h (enum cpool_tag): Convert a bunch of #define constants to
2116         an enum.
2117         * jcf-reader.c (get_attribute): Pass field/method index and
2118         attribute type to get_attribute().
2119         * constants.c (find_class_or_string_constant): Make nonstatic.
2120         (cpool_for_class): Likewise.
2121         (build_constants_constructor): Separate string and scalar types.
2122         * class.c (make_class_data): Generate field_indexes permutation.
2123         Pass it to rewrite_reflection_indexes().
2124         (make_class_data): Generate constructor for reflection_data field.
2125
2126 2006-10-20  Tom Tromey  <tromey@redhat.com>
2127
2128         * gcj.texi (Top): Don't mention jv-scan.
2129         (Invoking gcj): Likewise.
2130         (Invoking gcjh): Likewise.
2131         (Invoking gjnih): Likewise.
2132         (Invoking gij): Likewise.
2133         (Invoking gcj-dbtool): Likewise.
2134         (Invoking jv-scan): Removed.
2135         * parse-scan.y: Removed.
2136         * jv-scan.c: Removed.
2137         * config-lang.in (stagestuff): Don't mention jv-scan.
2138         * Make-lang.in (java): Removed jv-scan.
2139         (JAVA_TARGET_INDEPENDENT_BIN_TOOLS): Likewise.
2140         (JVSCAN_OBJS): Removed.
2141         (jv-scan$(exeext)): Likewise.
2142         (JAVA_MANFILES): Removed jv-scan.1.
2143         (java.uninstall): Don't mention jv-scan.
2144         (java.mostlyclean): Likewise.
2145         (java.maintainer-clean): Likewise.
2146         (.INTERMEDIATE): Likewise.
2147         (java/jv-scan.o): Removed.
2148         (jv-scan.pod): Likewise.
2149         (java.srcextra): Don't mention parse-scan.c.
2150         (java.mostlyclean): Likewise.
2151         (java/parse-scan.c): Removed.
2152         (java/parse-scan.o-warn): Removed.
2153         (java/parse-scan.o): Removed.
2154
2155 2006-10-20  Tom Tromey  <tromey@redhat.com>
2156
2157         * lang.c (java_handle_option): Don't use
2158         jcf_write_base_directory.
2159         * jcf.h (jcf_write_base_directory): Removed.
2160         * parse.y (java_expand_classes): Don't call write_classfile.
2161         * config-lang.in (gtfiles): Removed jcf-write.c.
2162         * Make-lang.in (JAVA_OBJS): Removed jcf-write.o.
2163         (java/jcf-write.o): Removed.
2164         * jcf-parse.c (parse_class_file): Don't call write_classfile.
2165         * java-tree.h (write_classfile): Removed declaration.
2166         * jcf-write.c: Removed.
2167
2168 2006-10-20  Tom Tromey  <tromey@redhat.com>
2169
2170         * Make-lang.in (java): Removed gjnih, gcjh.
2171         (JAVA_TARGET_INDEPENDENT_BIN_TOOLS): Likewise.
2172         (GCJH_OBJS): Removed.
2173         (GJNIH_OBJS): Likewise.
2174         (gjnih$(exeext)): Likewise.
2175         (gcjh$(exeext)): Likewise.
2176         (JAVA_MANFILES): Removed gcjh.1, gjnih.1.
2177         (java.install-common): Don't special case gcjh.
2178         (java.uninstall): Don't mention gcjh, gjnih.
2179         (java.mostlyclean): Likewise.
2180         (java.maintainer-clean): Likewise.
2181         (.INTERMEDIATE): Likewise.
2182         (gcjh.pod): Removed.
2183         (gjnih.pod): Likewise.
2184         (GCJH_TARGET_INSTALL_NAME): Removed.
2185         (java/gjavah-jni.o): Removed.
2186         (java/gjavah.o): Likewise.
2187         * config-lang.in (stagestuff): Removed gjnih, gcjh.
2188         * gjavah.c: Removed.
2189
2190 2006-10-17  Tom Tromey  <tromey@redhat.com>
2191
2192         * jcf-dump.c (print_element_value): Expect a utf8 constant in the
2193         "string" case.
2194
2195 2006-10-17  Tom Tromey  <tromey@redhat.com>
2196
2197         * jvgenmain.c (main): Handle -findirect-dispatch.
2198         * jvspec.c (jvgenmain_spec): Pass -findirect-dispatch to
2199         jvgenmain.
2200
2201 2006-10-06  Andrew Haley  <aph@redhat.com>
2202
2203         * builtins.c (compareAndSwapInt_builtin): Check that we really do
2204         have a compare_and_swap builtin.
2205         (compareAndSwapLong_builtin): Likewise.
2206         (compareAndSwapObject_builtin): Likewise.
2207
2208 2006-10-04  Andrew Haley  <aph@redhat.com>
2209
2210         * builtins.c (java_builtins): Add compareAndSwapInt,
2211         compareAndSwapLong, compareAndSwapObject, putOrderedInt,
2212         putOrderedLong, putOrderedObject, putIntVolatile, putLongVolatile,
2213         putObjectVolatile, getObjectVolatile, getIntVolatile,
2214         getLongVolatile, getLong.
2215         (UNMARSHAL3): New macro.
2216         (UNMARSHAL4): Likewise.
2217         (UNMARSHAL5): Likewise.
2218         (build_arglist_for_builtin): New function.
2219         (build_addr_sum, build_check_this): New functions.
2220         (putObject_builtin. compareAndSwapInt_builtin,
2221         compareAndSwapLong_builtin, compareAndSwapObject_builtin,
2222         putVolatile_builtin, getVolatile_builtin): New builtins.
2223
2224 2006-06-08  Andrew Haley  <aph@redhat.com>
2225  
2226         * expr.c (build_field_ref): Pass NULL_TREE as SPECIAL arg to
2227         get_symbol_table_index().
2228         (maybe_rewrite_invocation): Set SPECIAL if we need to access a
2229         private method.
2230         (build_known_method_ref): New arg: special.  Pass it to
2231         get_symbol_table_index.
2232         (get_symbol_table_index): Put SPECIAL in the TREE_PURPOSE field of
2233         the method list.
2234         (build_invokevirtual): New arg: special.  Pass it to
2235         get_symbol_table_index.
2236         (expand_invoke): New variable: special.
2237         Pass it to maybe_rewrite_invocation().
2238         Pass it to build_known_method_ref().
2239         * class.c (build_symbol_entry): Add new arg: special.  Use it to
2240         build the symbol table conbstructor.
2241         (emit_symbol_table): Extract SPECIAL from the method list and pass
2242         it to build_symbol_entry().
2243         * parse.y (patch_invoke): Call maybe_rewrite_invocation() and set
2244         special accordingly.
2245  
2246 2006-09-08  Andrew Haley  <aph@redhat.com>
2247
2248         * class.c (layout_class_method): Use build_java_signature, not
2249         build_java_argument_signature.  Use lookup_java_method, not
2250         lookup_argument_method.
2251
2252 2006-08-16  Jakub Jelinek  <jakub@redhat.com>
2253             Bryce McKinlay  <bryce@mckinlay.net.nz>
2254
2255         * jvspec.c (lang_specific_driver): Add -s-bc-abi when needed.
2256
2257 2006-07-18  Tom Tromey  <tromey@redhat.com>
2258
2259         * lang.opt: Added missing -W options.
2260
2261 2006-07-12  Tom Tromey  <tromey@redhat.com>
2262
2263         PR java/28329:
2264         * lang-specs.h: Pass '%U'-based options as separate arguments.
2265         Use -faux-classpath.
2266         * lang.c (java_handle_option): Handle OPT_faux_classpath.
2267         * lang.opt (faux-classpath): New option.
2268
2269 2006-07-07  Tom Tromey  <tromey@redhat.com>
2270
2271         * class.c (make_class_data): Set value for reflection_data field.
2272         * decl.c (java_init_decl_processing): Add reflection_data field.
2273
2274 2006-07-07  Tom Tromey  <tromey@redhat.com>
2275
2276         * jcf-dump.c (HANDLE_ENCLOSINGMETHOD_ATTRIBUTE): Declare locals
2277         earlier.
2278         (HANDLE_SIGNATURE_ATTRIBUTE): Likewise.
2279
2280 2006-07-07  Andrew Haley  <aph@redhat.com>
2281
2282         * jcf-parse.c (set_source_filename): Don't check for
2283         CLASS_FROM_CURRENTLY_COMPILED_P.
2284         Remove // comments.
2285
2286 2006-07-07  Andrew Haley  <aph@redhat.com>
2287
2288         * java-tree.h (java_read_sourcefilenames): Declare.
2289         * lang.c (java_handle_option): Call java_read_sourcefilenames().
2290         * lang.opt (fsource-filename): New opt.
2291         * lang-specs.h: Add -fsource-filename.
2292         * jcf-parse.c (num_files, filenames): New variables.
2293         (reverse, cmpstringp, java_read_sourcefilenames,
2294         find_sourcefile): New.
2295         (set_source_filename): Call find_sourcefile to find the real name
2296         of a source file.
2297
2298 2006-06-27  Tom Tromey  <tromey@redhat.com>
2299
2300         * jcf-reader.c (get_attribute): Handle EnclosingMethod,
2301         Signature, LocalVariableTypeTable, annotation attributes.
2302         * jcf-dump.c (HANDLE_ENCLOSINGMETHOD_ATTRIBUTE): New macro.
2303         (HANDLE_SIGNATURE_ATTRIBUTE): Likewise.
2304         (HANDLE_START_FIELD): Mention 'descriptor', not 'signature'.
2305         (HANDLE_METHOD): Likewise.
2306         (HANDLE_LOCALVARIABLETYPETABLE_ATTRIBUTE): New macro.
2307         (print_annotation): New function.
2308         (print_element_value): Likewise.
2309         (indent): Likewise.
2310         (HANDLE_RUNTIMEVISIBLEANNOTATIONS_ATTRIBUTE): New macro.
2311         (HANDLE_RUNTIMEINVISIBLEANNOTATIONS_ATTRIBUTE): Likewise.
2312         (print_parameter_annotations): New function.
2313         (HANDLE_RUNTIMEVISIBLEPARAMETERANNOTATIONS_ATTRIBUTE): New macro.
2314         (HANDLE_RUNTIMEINVISIBLEPARAMETERANNOTATIONS_ATTRIBUTE):
2315         Likewise.
2316         (HANDLE_ANNOTATIONDEFAULT_ATTRIBUTE): Likewise.
2317         (print_annotations): New function.
2318
2319 2006-06-23  Tom Tromey  <tromey@redhat.com>
2320
2321         * lang-specs.h: Default -fsource and -ftarget to 1.5.  If
2322         emitting class files, always use 1.5.
2323         * gcj.texi (Input Options): Document -fsource.
2324         (Code Generation): Document -ftarget.
2325
2326 2006-06-21  Tom Tromey  <tromey@redhat.com>
2327
2328         PR java/28089:
2329         * expr.c (expand_java_field_op): Initialize field's declaring
2330         class.
2331
2332 2006-06-20  Tom Tromey  <tromey@redhat.com>
2333
2334         * expr.c (push_value): Always flush quick stack.
2335
2336 2006-06-19  Tom Tromey  <tromey@redhat.com>
2337
2338         * expr.c (push_value): Also flush quick stack if value is a
2339         component_ref.
2340
2341 2006-06-19  Tom Tromey  <tromey@redhat.com>
2342
2343         * expr.c (push_value): Flush quick stack if value has side
2344         effects.
2345
2346 2006-06-13  Tom Tromey  <tromey@redhat.com>
2347
2348         * class.c (is_compiled_class): Explicitly check for current
2349         class.
2350
2351 2006-06-09  Tom Tromey  <tromey@redhat.com>
2352
2353         * gjavah.c (decompile_method): Don't decompile a static field
2354         accessor method.
2355
2356 2006-06-06  Tom Tromey  <tromey@redhat.com>
2357
2358         * lang-specs.h <jc1>: Add .jar file to command line if
2359         -fsaw-java-file.  Also, remove -ffilelist-file in this case.
2360
2361 2006-06-05  Tom Tromey  <tromey@redhat.com>
2362
2363         * jcf-dump.c (print_access_flags): Handle varargs, bridge,
2364         synthetic, enum, annotation.
2365         * jcf.h (ACC_BRIDGE): New macro.
2366         (ACC_VARARGS): Likewise.
2367         (ACC_SYNTHETIC): Likewise.
2368         (ACC_ENUM): Likewise.
2369         (ACC_ANNOTATION): Likewise.
2370
2371 2006-06-04  Tom Tromey  <tromey@redhat.com>
2372
2373         * lang.opt (-fsaw-java-file, -fsource, -ftarget): New options.
2374         * jvspec.c (jvgenmain_spec): Remove -fsaw-java-file, -fsource,
2375         and -ftarget.
2376         (lang_specific_driver): Removed dead code.  Add -fsaw-java-file
2377         when needed.  Handle classpath-setting.
2378         * Make-lang.in ($(GCJ)$(exeext)): Link in jcf-path.o.
2379         * lang-specs.h: Rewrote.
2380
2381 2006-06-04  Tom Tromey  <tromey@redhat.com>
2382
2383         * jcf-io.c (find_class): Set source_ok to 0.
2384         * jcf-parse.c (jcf_parse): Disable gnu.gcj.gcj-compiled warning.
2385         (parse_class_file): Don't call java_mark_class_local.
2386         (java_parse_file): Skip .java files.  Call java_mark_class_local
2387         before lowering any code.
2388         (parse_zip_file_entries): Don't call duplicate_class_warning
2389         here.
2390         (process_zip_dir): ... call it here.
2391         * class.c (add_field): Don't mark field external if it is being
2392         compiled into this object.
2393         (make_class_data): Handle situation where class_dtable_decl is
2394         created before Class is compiled.
2395         (is_compiled_class): Don't assume files in zip are compiled into
2396         this object.
2397         (layout_class_method): Don't mark method external if it is being
2398         compiled into this object.
2399
2400 2006-06-04  Tom Tromey  <tromey@redhat.com>
2401
2402         * jcf-path.c (jcf_path_compute): New function.
2403         * jcf.h (jcf_path_compute): Declare.
2404
2405 2006-10-23 Rafael Ávila de Espíndola  <rafael.espindola@gmail.com>
2406
2407         * decl.c: Include langhooks.h.
2408         (builtin_function): Remove.
2409         (java_init_decl_processing): Replace calls to builtin_function
2410         with add_builtin_function.
2411         * Make-lang.in (jc1$(exeext)): Depend on and link with attribs.o.
2412         (java/decl.o): Depend on langhooks.h.
2413         * java-tree.h (builtin_function): Remove.
2414
2415 2006-10-10  Brooks Moses  <bmoses@stanford.edu>
2416
2417         * Make-lang.in: Added "java.pdf", "gcj.pdf" target support.
2418
2419 2006-09-12  Tom Tromey  <tromey@redhat.com>
2420
2421         * expr.c (push_value): Always flush quick stack.
2422
2423 2006-09-12  Tom Tromey  <tromey@redhat.com>
2424
2425         PR java/29013:
2426         * jcf-write.c (generate_bytecode_insns) <CALL_EXPR>: Always note
2427         the push of the called method's return result.
2428
2429 2006-09-12  Tom Tromey  <tromey@redhat.com>
2430
2431         * jvspec.c (lang_specific_driver): Read spec file even if
2432         -fsyntax-only.
2433
2434 2006-09-12  Tom Tromey  <tromey@redhat.com>
2435
2436         PR java/28754:
2437         * expr.c (expand_java_field_op): Initialize field's declaring
2438         interface if necessary.
2439
2440 2006-09-12  Tom Tromey  <tromey@redhat.com>
2441
2442         PR java/28892:
2443         * expr.c (expand_java_field_op): No error for assignments not in
2444         class initializer or constructor.
2445
2446 2006-08-22  Andrew Haley  <aph@redhat.com>
2447
2448         * decl.c (java_add_stmt): Give the statement list a type.
2449
2450 2006-08-16  Jakub Jelinek  <jakub@redhat.com>
2451             Bryce McKinlay  <bryce@mckinlay.net.nz>
2452
2453         * jvspec.c (lang_specific_driver): Add -s-bc-abi when needed.
2454
2455 2006-08-10  Simon Martin  <simartin@users.sourceforge.net>
2456
2457         PR java/8923
2458         * parse.y (build_incdec): Emit an error instead of an ICE if '++'
2459         or '--' is used with a constant operand.
2460         (java_complete_lhs): When processing a '++' or '--' expression,
2461         don't call java_complete_tree but java_complete_lhs, so that a
2462         static final variable operand is never replaced by its value. This
2463         avoids an ICE later on.
2464         (patch_unaryop): Fixed typo in comment.
2465
2466 2006-07-28  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
2467
2468         * Make-lang.in: Use $(HEADER_H) instead of header.h in dependencies.
2469
2470 2006-07-12  Bryce McKinlay  <mckinlay@redhat.com>
2471
2472         * builtins.c (check_for_builtin): If a builtin could result in a
2473         direct call being generated, don't use it if flag_indirect_dispatch
2474         is set.
2475
2476 2006-07-12  Bryce McKinlay  <mckinlay@redhat.com>
2477
2478         * gcj.texi (Invocation): Corrections for Invocation API example.
2479
2480 2006-07-04  Andrew Haley  <aph@redhat.com>
2481
2482         * class.c (build_fieldref_cache_entry): Set DECL_IGNORED_P on the
2483         entry.
2484
2485 2006-06-21  Andrew Haley  <aph@redhat.com>
2486
2487         * java-tree.h (update_aliases): Remove
2488         * expr.c (expand_iinc): Remove call to update_aliases().
2489         (STORE_INTERNAL): Likewise.
2490         * decl.c (update_aliases, initialize_local_variable) 
2491         (maybe_pushlevels): Set DECL_VALUE_EXPR for debugging decls.
2492
2493 2006-06-19  Andrew Haley  <aph@redhat.com>
2494
2495         PR java/1305
2496         PR java/27908
2497         * expr.c (java_modify_addr_for_volatile): New function.
2498         (expand_java_field_op): Handle volatile fields.
2499         * java-gimplify.c (java_gimplify_component_ref): Call
2500         java_modify_addr_for_volatile to give the field_ref the correct
2501         volatile type.
2502         (java_gimplify_modify_expr): Likewise.
2503         * java-tree.h (java_modify_addr_for_volatile): New decl.
2504
2505 2006-06-17  Karl Berry  <karl@gnu.org>
2506
2507         * gcj.texi (@dircategory): Use "Software development" instead
2508         of "Programming", following the Free Software Directory.
2509
2510 2006-06-16  Andrew Haley  <aph@redhat.com>
2511
2512         * class.c (make_class_data): When using flag_indirect_classes,
2513         don't initialize the vtable of Class instances.
2514
2515 2006-06-09  Andrew Haley  <aph@redhat.com>
2516
2517         PR java/1305
2518         PR java/27908
2519         * builtins.c (initialize_builtins): Add __sync_synchronize().
2520         * class.c (add_field): Mark volatile fields.
2521         * java-gimplify.c (java_gimplify_expr): Call new functions to
2522         handle self-modifying exprs and COMPONENT_REFs.
2523         (java_gimplify_component_ref): New.
2524         (java_gimplify_modify_expr): Add handling for volatiles.
2525
2526 2006-06-08  Tom Tromey  <tromey@redhat.com>
2527
2528         * gcj.texi (libgcj Runtime Properties): Document
2529         gnu.gcj.user.realname.
2530
2531 2006-06-08  Andrew Haley  <aph@redhat.com>
2532
2533         * expr.c (build_field_ref): Pass NULL_TREE as SPECIAL arg to
2534         get_symbol_table_index().
2535         (maybe_rewrite_invocation): Set SPECIAL if we need to access a
2536         private method.
2537         (build_known_method_ref): New arg: special.  Pass it to
2538         get_symbol_table_index.
2539         (get_symbol_table_index): Put SPECIAL in the TREE_PURPOSE field of
2540         the method list.
2541         (build_invokevirtual): New arg: special.  Pass it to
2542         get_symbol_table_index.
2543         (expand_invoke): New variable: special.
2544         Pass it to maybe_rewrite_invocation().
2545         Pass it to build_known_method_ref().
2546         * class.c (build_symbol_entry): Add new arg: special.  Use it to
2547         build the symbol table conbstructor.
2548         (emit_symbol_table): Extract SPECIAL from the method list and pass
2549         it to build_symbol_entry().
2550         * parse.y (patch_invoke): Call maybe_rewrite_invocation() and set
2551         special accordingly.
2552
2553 2006-06-06  David Daney  <ddaney@avtrex.com>
2554
2555         * gcj.texi (libgcj Runtime Properties): Document
2556         gnu.gcj.runtime.NameFinder.show_raw and
2557         gnu.gcj.runtime.NameFinder.remove_unknown.
2558
2559 2006-06-06  Tom Tromey  <tromey@redhat.com>
2560
2561         * jcf-dump.c (print_access_flags): Handle varargs, bridge,
2562         synthetic, enum, annotation.
2563         * jcf.h (ACC_BRIDGE): New macro.
2564         (ACC_VARARGS): Likewise.
2565         (ACC_SYNTHETIC): Likewise.
2566         (ACC_ENUM): Likewise.
2567         (ACC_ANNOTATION): Likewise.
2568
2569 2006-06-06  Mike Stump  <mrs@apple.com>
2570
2571         * Make-lang.in: Rename to htmldir to build_htmldir to avoid
2572         installing during build.
2573
2574 2006-05-31  Thomas Fitzsimmons  <fitzsim@redhat.com>
2575
2576         * gcj.texi (Extensions): Document the new gcj-dbtool-based
2577         classname-to-library resolution mechanism.
2578         Declare the old gnu.gcj.runtime.VMClassLoader.library_control
2579         mechanism deprecated.
2580         (libgcj Runtime Properties): Document
2581         gnu.gcj.runtime.VMClassLoader.library_control's new default.
2582
2583 2006-05-29  Jakub Jelinek  <jakub@redhat.com>
2584
2585         * javaop.h (int16, int32, int64): Define to exactly 16 (resp. 32, 64)
2586         bit wide type.
2587         (jword): Define to uint64 on 64-bit arches.
2588         * jcf-dump.c (print_constant): Cast JPOOL_UINT to long.
2589
2590 2006-05-28  Kazu Hirata  <kazu@codesourcery.com>
2591
2592         * class.c, except.c, expr.c, java-gimplify.c: Fix comment
2593         typos.
2594
2595 2006-05-26  Tom Tromey  <tromey@redhat.com>
2596
2597         * expr.c (java_push_constant_from_pool): Handle 'ldc class'.
2598         * verify-glue.c (vfy_class_type): New function.
2599         * verify-impl.c (check_constant): Allow 'ldc class'.
2600         * verify.h (vfy_class_type): Declare.
2601
2602 2006-05-25  Andrew Haley  <aph@redhat.com>
2603
2604         PR java/27756
2605         * decl.c (maybe_pushlevels): When variable ranges are non-nested
2606         update all lifetimes, not just the first one.
2607
2608 2006-05-24  Tom Tromey  <tromey@redhat.com>
2609
2610         * java-tree.h: Fixed flag documentation.
2611
2612 2006-05-24  Tom Tromey  <tromey@redhat.com>
2613
2614         PR libgcj/27729:
2615         * jcf.h (ACC_INVISIBLE): Changed value.
2616
2617 2006-05-24  Andrew Haley  <aph@redhat.com>
2618
2619         PR java/27754
2620         * decl.c (java_add_stmt): Use a STATEMENT_LIST rather than a
2621         COMPOUND_EXPR.
2622
2623 2006-05-16  H.J. Lu  <hongjiu.lu@intel.com>
2624
2625         * lang.opt (femit-class-file): Remove VarExists.
2626
2627 2006-05-16  Tom Tromey  <tromey@redhat.com>
2628
2629         * verify-impl.c (verify_instructions_0) <op_return>: Special case
2630         for Object.<init>.
2631
2632 2006-05-16  H.J. Lu  <hongjiu.lu@intel.com>
2633
2634         PR driver/26885
2635         * Make-lang.in ($(GCJ)$(exeext)): Replace gcc.o with
2636         $(GCC_OBJS).
2637
2638 2006-05-14  H.J. Lu  <hongjiu.lu@intel.com>
2639
2640         * Make-lang.in (java/decl.o): Add dependency on $(TARGET_H).
2641         (java/expr.o): Replace target.h with $(TARGET_H).
2642         (java/parse.o): Likewise.
2643
2644 2006-05-10  Andrew Haley  <aph@redhat.com>
2645
2646         * class.c (emit_indirect_register_classes): Fix comment.
2647
2648 2006-05-04  Tom Tromey  <tromey@redhat.com>
2649
2650         * java-tree.h (uses_jv_markobj_p): Declare.
2651         * class.c (uses_jv_markobj_p): Removed.
2652         * boehm.c (PROCEDURE_OBJECT_DESCRIPTOR): New define.
2653         (get_boehm_type_descriptor): Use it.
2654         (uses_jv_markobj_p): Moved from class.c.  Return bool.
2655
2656 2006-05-04  Tom Tromey  <tromey@redhat.com>
2657
2658         * java-tree.def (THIS_EXPR): Now a tcc_expression.
2659
2660 2006-05-04  Andrew Haley  <aph@redhat.com>
2661
2662         * class.c (make_field_value): Always build_address_of fdecl if
2663         there is an initializer.
2664
2665 2006-05-03  Andrew Haley  <aph@redhat.com>
2666
2667         PR libgcj/27352
2668         * expr.c (maybe_rewrite_invocation): New function.
2669         (rewrite_arglist_getclass): Likewise.
2670         (rules): New.
2671         (expand_invoke): Call maybe_rewrite_invocation.
2672         * parse.y (patch_invoke): Likewise.
2673         * java-tree.h: (maybe_rewrite_invocation): New function.
2674
2675 2006-04-21  Andrew Haley  <aph@redhat.com>
2676
2677         * lang.c (java_init): Handle flag_indirect_classes.
2678         * jvgenmain.c: Use "class$$" instead of "class$".
2679         * mangle.c (java_mangle_decl): Accept RECORD_TYPEs sw well as
2680         DECLs.
2681         (mangle_class_field): Special case "class$$" as well as "class$".
2682         * constants.c (build_ref_from_constant_pool): If
2683         flag_indirect_classes, generate a ref into the heap.
2684         * decl.c (constants_field_decl_node,
2685         constants_data_field_decl_node): New.
2686         * class.c (build_static_class_ref): New.
2687         (build_classdollar_field): Factor out from build_class_ref().
2688         (make_field_value): Handle static fields in heap.
2689         (make_class_data): Make sure we get a static ref to class.
2690         Make class initializer const if flag_indirect_classes.
2691         (register_class): Build a class_ref for initialization if
2692         flag_indirect_classes.
2693         (emit_indirect_register_classes): New.
2694
2695 2006-04-08  Kazu Hirata  <kazu@codesourcery.com>
2696
2697         * expr.c, gjavah.c: Fix comment typos.
2698
2699 2006-04-03  Andrew Haley  <aph@redhat.com>
2700
2701         PR java/26858
2702         * expr.c (build_field_ref): Don't check the field offset if
2703         flag_syntax_only.
2704
2705 2006-03-30  Andrew Haley  <aph@redhat.com>
2706
2707         PR java/26858
2708         * lang.c (java_attribute_table): New.
2709         (LANG_HOOKS_ATTRIBUTE_TABLE): Define.
2710         * expr.c (build_field_ref): Add a null pointer check for all
2711         fields of offset > 4k.  Don't do so for accesses via the this
2712         pointer, which we know can never be null.
2713         * class.c (build_java_method_type): Mark arg 1 of all nonstatic
2714         methods nonnull.
2715
2716 2006-03-30  Carlos O'Donell  <carlos@codesourcery.com>
2717
2718         * Make-lang.in: Rename docdir to gcc_docdir.
2719
2720 2006-03-30  Tom Tromey  <tromey@redhat.com>
2721
2722         PR java/26042:
2723         * parse.y (java_reorder_fields): Reset superclass field's size as
2724         well.
2725
2726 2006-03-28  Tom Tromey  <tromey@redhat.com>
2727
2728         PR java/26390:
2729         * parse.y (find_most_specific_methods_list): Added 'class'
2730         argument.
2731         (lookup_method_invoke): Updated.
2732
2733 2006-03-15  Tom Tromey  <tromey@redhat.com>
2734
2735         * jcf-write.c (generate_bytecode_insns): Use qualifying type for
2736         non-static method calls.
2737
2738 2006-03-15  David Daney  <ddaney@avtrex.com>
2739
2740         * java-tree.h : Moved comment for TYPE_DOT_CLASS adjacent to its
2741         declaration.
2742
2743 2006-03-15  David Daney  <ddaney@avtrex.com>
2744
2745         * lang.opt (-freduced-reflection): New option.
2746         * lang.c (java_post_options): Generate an error if
2747         -freduced-reflection used with -fjni or -findirect-dispatch.
2748         * java-tree.h (flag_reduced_reflection): Declare new variable.
2749         * boehm.c (get_boehm_type_descriptor): Indicate all pointers
2750         if bitmap overflows and flag_reduced_reflection set.
2751         * class.c (uses_jv_markobj_p): New function.
2752         (make_class_data): Moved generation of vtable to before
2753         reflection data, generate less reflection data if
2754         flag_reduced_reflection set.
2755         * gcj.texi: Document -freduced-reflection.
2756
2757 2006-03-15  Tom Tromey  <tromey@redhat.com>
2758
2759         PR java/26638:
2760         * class.c (get_interface_method_index): Don't put <clinit> into
2761         interface table.
2762
2763 2006-03-15  Tom Tromey  <tromey@redhat.com>
2764
2765         * parse.y (analyze_clinit_body): Ignore empty statements.
2766
2767 2006-03-08  David Daney  <ddaney@avtrex.com>
2768
2769         * gcj.texi: Document -static-libgcj option.
2770
2771 2006-02-20  Andrew Haley  <aph@redhat.com>
2772
2773         * jcf-parse.c (parse_class_file): Set input_location from
2774         current_class.
2775
2776 2006-02-15  Andrew Haley  <aph@redhat.com>
2777
2778         * class.c (GEN_TABLE): Don't pushdecl *_SYMS_DECL here.
2779         (make_class_data): pushdecl_top_level TYPE_OTABLE_SYMS_DECL,
2780         TYPE_ATABLE_SYMS_DECL, TYPE_ITABLE_SYMS_DECL here.
2781
2782 2006-02-09  Andrew Haley  <aph@redhat.com>
2783
2784         PR java/26192
2785         * expr.c (expand_invoke): Allow methods in arrays to be resolved
2786         in their superclass.
2787
2788         * typeck.c (build_java_array_type): Generate TYPE_STUB_DECLs for
2789         array types.
2790         
2791 2006-02-08  Tom Tromey  <tromey@redhat.com>
2792
2793         PR java/22578:
2794         * check-init.c (check_init): Handle VIEW_CONVERT_EXPR.
2795         * builtins.c (convert_real): New function.
2796         (java_builtins): Handle Float.intBitsToFloat,
2797         Float.floatToRawIntBits, Double.longBitsToDouble,
2798         Double.doubleToRawLongBits.
2799
2800 2006-02-07  Andrew Haley  <aph@redhat.com>
2801
2802         * expr.c (expand_invoke): (BC mode.)  If we find a method in a
2803         class other than the one in which we expected to find it, ignore
2804         the result.
2805
2806         PR java/25535
2807         * constants.c (build_constants_constructor): move initializer into
2808         first halfword on a 64-bit big-endian machine.
2809
2810 2006-02-04  Tom Tromey  <tromey@redhat.com>
2811
2812         PR java/25676:
2813         * builtins.c (max_builtin): Skip floating point 'max'.
2814         (min_builtin): Skip floating point 'min'.
2815         (check_for_builtin): Never return NULL_TREE.
2816
2817 2006-02-04  Tom Tromey  <tromey@redhat.com>
2818
2819         PR java/26097:
2820         * expr.c (push_type): Avoid side effect in gcc_assert.
2821
2822 2006-02-04  Roger Sayle  <roger@eyesopen.com>
2823
2824         * decl.c (java_init_decl_processing): Create char_type_node as a
2825         regular INTEGER_TYPE node.
2826         (push_promoted_type): Preserve TYPE_STRING_FLAG on types.
2827         * typeck.c (convert): No longer check for CHAR_TYPEs but instead
2828         test for char_type_node and promoted_char_type_node as special
2829         instances of INTEGER_TYPE tree codes.
2830         (promote_type,build_java_signature): Likewise.
2831         * jcf-write.c (adjust_typed_op): Likewise.
2832         * mangle.c (mangle_type): Likewise.
2833         * parse.y (do_unary_numeric_promotion): No longer handle CHAR_TYPE.
2834         * parse.h (JINTEGRAL_TYPE_P): Likewise.
2835
2836 2006-02-04  Andreas Tobler  <a.tobler@schweiz.ch>
2837
2838         * expr.c (java_stack_swap): Revert gcc_assert patch.
2839
2840 2006-02-03  Ben Elliston  <bje@au.ibm.com>
2841
2842         * java-gimplify.c: Use gcc_assert and gcc_unreachable throughout.
2843         * typeck.c: Likewise.
2844         * verify-impl.c: Likewise.
2845         * class.c: Likewise.
2846         * decl.c: Likewise.
2847         * jcf-parse.c: Likewise.
2848         * constants.c: Likewise.
2849         * check-init.c: Likewise.
2850         * jcf-write.c: Likewise.
2851         * verify-glue.c: Likewise.
2852         * mangle.c: Likewise.
2853         * expr.c: Likewise.
2854         * lang.c: Likewise.
2855         * boehm.c: Likewise.
2856
2857 2006-02-01  Jan Hubicka  <jh@suse.cz>
2858
2859         * decl.c (end_java_method): Kill hack disabling unit-at-a-time.
2860         * lang.c (java_init_options): Set no_unit_at_a_time_default.
2861
2862 2006-01-30  Andrew Haley  <aph@redhat.com>
2863
2864         PR java/21428
2865         * parse.y: (source_start_java_method): Mark DECL_ARTIFICIAL("this").
2866
2867 2006-01-21  Joseph S. Myers  <joseph@codesourcery.com>
2868
2869         * jv-scan.c (version), jcf-dump.c (version), gjavah.c (version):
2870         Update copyright notice dates.
2871
2872 2006-01-16  Rafael Ávila de Espíndola  <rafael.espindola@gmail.com>
2873
2874         * jvspec.c (lang_specific_spec_functions): Remove.
2875
2876 2006-01-06  Tom Tromey  <tromey@redhat.com>
2877
2878         * gcj.texi (Arrays): Added more documentation for
2879         JvNewObjectArray.
2880         (Primitive types): Correct information about primitive classes.
2881         (Reference types): New node.
2882         (Index): New node.
2883
2884 2005-12-16  Alexandre Oliva  <aoliva@redhat.com>
2885
2886         * jcf-parse.c (set_source_filename): Set the decl source location
2887         even when returning early.
2888
2889 2005-12-15  Tom Tromey  <tromey@redhat.com>
2890             Andrew Haley  <aph@redhat.com>
2891
2892         PR java/25429
2893         * parse.y (resolve_expression_name): Don't generate accessor
2894         methods for constant fields.
2895
2896 2005-12-13  Andrew Haley  <aph@redhat.com>
2897
2898         PR java/25366
2899         PR java/25368
2900         * class.c (maybe_layout_super_class): Update current_class before
2901         calling do_resolve_class.
2902
2903 2005-12-12  H.J. Lu  <hongjiu.lu@intel.com>
2904
2905         PR java/25330
2906         * jcf-write.c (write_classfile): Use PID in temporary class
2907         file. Save/restore errno when reporting error.
2908
2909 2005-12-10  Terry Laurenzo  <tlaurenzo@gmail.com>
2910
2911         PR java/9861
2912         * mangle.c (mangle_method_decl): Mangle Java methods by prepending 'J'
2913         to bare_function_type and including the return type
2914         * builtins.c (initialize_builtins) : Change builtin mangled name
2915         constants to conform to new mangling scheme
2916
2917 2005-12-08  Andrew Haley  <aph@redhat.com>
2918
2919         PR libgcj/25265
2920         * java-tree.h (enum java_tree_index): Add JTI_SOFT_NOSUCHFIELD_NODE.
2921         (soft_abstractmethod_node): New.
2922         * expr.c (build_field_ref): Add in-line check for missing field.
2923         * decl.c (java_init_decl_processing): Add soft_nosuchfield_node.
2924
2925 2005-12-07  Rafael Ávila de Espíndola  <rafael.espindola@gmail.com>
2926
2927         * Make-lang.in (java.all.build, java.install-normal): Remove.
2928
2929 2005-12-07  Rafael Ávila de Espíndola  <rafael.espindola@gmail.com>
2930
2931         * Make-lang.in: Remove all dependencies on s-gtype, except for
2932         gt-java-parse.h.
2933
2934 2005-12-07  Richard Sandiford  <richard@codesourcery.com>
2935
2936         * class.c (build_utf8_ref, emit_register_classes): Use
2937         switch_to_section and get_section.
2938
2939 2005-12-06  Tom Tromey  <tromey@redhat.com>
2940
2941         PR java/25283:
2942         * parse.y (patch_new_array_init): Revert previous patch.
2943         (lookup_method_invoke): Use size-less array type when creating an
2944         anonymous constructor.
2945
2946 2005-12-05  Tom Tromey  <tromey@redhat.com>
2947
2948         * parse.y (patch_new_array_init): Don't set length on array.
2949
2950 2005-12-02  Richard Guenther  <rguenther@suse.de>
2951
2952         * java-gimplify.c (java_gimplify_labeled_block_expr): Use
2953         buildN instead of build.
2954         * class.c (finish_class): Likewise.
2955         * expr.c (java_create_object): Likewise.
2956
2957 2005-11-28  Tom Tromey  <tromey@redhat.com>
2958
2959         PR java/18278:
2960         * expr.c (build_jni_stub): Unwrap the return value.
2961         * java-tree.h (soft_unwrapjni_node): New define.
2962         (enum java_tree_index): Added JTI_SOFT_UNWRAPJNI_NODE.
2963         * decl.c (java_init_decl_processing): Initialize
2964         soft_unwrapjni_node.
2965
2966 2005-11-24  Bryce McKinlay  <mckinlay@redhat.com>
2967
2968         * gcj.texi (gij options): Add -Xss documentation.
2969
2970 2005-11-08  Wil Mahan  <wmahan@gmail.com>
2971
2972         PR java/23617
2973         * zextract.c (read_zip_archive): Fix out of memory error when
2974         reading jar files with zip-style comments.
2975
2976 2005-11-07   Terry Laurenzo   <tlaurenzo@gmail.com>
2977
2978         * gjavah.c (HANDLE_CODE_ATTRIBUTE): Only define for ELF Object
2979         formats.
2980         * gjavah.c (decompile_method): Add ATTRIBUTE_UNUSED
2981
2982 2005-10-12  Nathan Sidwell  <nathan@codesourcery.com>
2983             Wil Mahan <wmahan@gmail.com>
2984
2985         PR java/23620
2986         * class.c (make_class): Create empty binfo here.
2987         (set_super_info): Only create binfo if we have superclasses.
2988
2989 2005-10-03  Ranjit Mathew  <rmathew@gcc.gnu.org>
2990
2991         PR java/24127
2992         * parse.y (method_header): Make the result of the rule a NULL_TREE
2993         when a parsing error occurs.
2994
2995 2005-09-29  Tom Tromey  <tromey@redhat.com>
2996
2997         PR java/24120:
2998         * jcf-io.c (memoized_dirlist_hash): New function.
2999         (caching_stat): Use it.
3000
3001 2005-09-21  Ranjit Mathew  <rmathew@gcc.gnu.org>
3002
3003         PR java/21418
3004         * class.c (inherits_from_p): Try to lay out super class
3005         if it is not already laid out.
3006         (maybe_layout_super_class): Handle the case where SUPER_CLASS
3007         is a NULL_TREE.
3008
3009 2005-09-18  James A. Morrison  <phython@gcc.gnu.org>
3010
3011         * builtins.c (max_builtin, min_builtin, abs_builtin,
3012         java_build_function_call_expr): Use fold_buildN.
3013         * class.c (layout_class_method): Likewise.
3014         * expr.c (java_truthvalue_conversion, build_java_jsr,
3015         build_java_arrayaccess, expand_java_arrayload, expand_iinc,
3016         build_java_binop, build_field_ref, expand_compare,
3017         build_known_method_ref, build_invokevirtual,
3018         process_jvm_instruction): Likewise.
3019         * parse.y (patch_binop, patch_exit_expr): Likewise.
3020         * typeck.c (convert_ieee_real_to_integer): Likewise.
3021         (convert): Don't call fold after convert_ieee_real_to_integer.
3022
3023 2005-09-14  Bryce McKinlay  <mckinlay@redhat.com>
3024
3025         PR java/23891
3026         * parse.y (maybe_create_class_interface_decl): Set TYPE_PACKAGE for
3027         the newly created type. Set import lists here, not in create_class.
3028         (jdep_resolve_class): Set current_class.
3029         (do_resolve_class): Use current_class's TYPE_PACKAGE to determine 
3030         the current package context, not ctxp->package.
3031         (cicp_cache): Removed.
3032         (class_in_current_package): Simplify implementation using TYPE_PACKAGE.
3033         * jcf-parse.c (give_name_to_class): Set TYPE_PACKAGE.
3034         * java-tree.h (TYPE_PACKAGE): New macro.
3035         (struct lang_type): New member 'package'.
3036
3037 2005-09-09  Andrew Haley  <aph@redhat.com>
3038
3039         PR libgcj/23182 
3040         * expr.c (pop_type_0): If the expected type is object or ptr
3041         (i.e. void*), return the type of the object we just popped from
3042         the stack.
3043
3044 2005-09-06  Andrew Pinski  <pinskia@physics.uc.edu>
3045
3046         * java-gimplify.c (java_gimplify_block): NULL out the old BLOCK's
3047         BLOCK_EXPR_BODY before returning the new BIND_EXPR.
3048
3049 2005-09-06  Kazu Hirata  <kazu@codesourcery.com>
3050
3051         * check-init.c, decl.c, expr.c, gcj.texi, java-tree.h,
3052         jcf-parse.c, jcf.h, parse.h, parse.y, typeck.c: Fix comment
3053         typos.  Follow spelling conventions.
3054
3055 2005-09-05  Ranjit Mathew  <rmathew@hotmail.com>
3056
3057         PR java/23431
3058         * typeck.c (lookup_do): Look up interfaces for the original class,
3059         not the base class.
3060         * parse.y (java_check_regular_methods): Fix diagnostic message for
3061         more restrictive overriding of a method from an interface.
3062
3063 2005-08-16  Tom Tromey  <tromey@redhat.com>
3064
3065         * class.c (make_class_data): Always emit JV_STATE_PRELOADING for
3066         class' initial state.
3067
3068 2005-08-16  Ranjit Mathew  <rmathew@hotmail.com>
3069
3070         PR java/22113
3071         * lex.c (do_java_lex): Define MAX_TOKEN_LEN. Avoid overflowing
3072         `literal_token' for large numeric input tokens.
3073
3074 2005-08-16  Ranjit Mathew  <rmathew@hotmail.com>
3075
3076         PR java/19870
3077         * parse.y (nested_field_access_p): Rename to nested_member_access_p
3078         and expand to handle method accesses across nested classes.
3079         (build_outer_method_access_method): Rename to
3080         build_nested_method_access_method.  Minor adjustments to comments.
3081         (resolve_expression_name): Use the newly-renamed
3082         nested_member_access_p method.
3083         (resolve_qualified_expression_name): Likewise.
3084         (patch_method_invocation): Also consider static methods for access
3085         method generation.  Minor adjustments to comments.
3086         (maybe_use_access_method): Use the more general
3087         nested_memeber_access_p to determine access across nested class
3088         boundaries.  Allow THIS_ARG to be NULL (for static methods).
3089
3090 2005-08-15  Tom Tromey  <tromey@redhat.com>
3091
3092         PR java/23300.
3093         * expr.c (build_field_ref): Don't generate otable reference when
3094         DECL_FIELD_OFFSET is 0.
3095         * class.c (maybe_layout_super_class): Pass outer class to
3096         do_resolve_class.
3097
3098 2005-08-15  Tom Tromey  <tromey@redhat.com>
3099
3100         * java-tree.h (LABEL_IN_SUBR): Removed.
3101         (LABEL_IN_SUBR): Likewise.
3102         (LABEL_IS_SUBR_START): Likewise.
3103         (LABEL_SUBR_START): Likewise.
3104         (LABEL_SUBR_CONTEXT): Likewise.
3105         (LABEL_CHANGED): Likewise.
3106         (LABEL_RETURN_LABEL): Likewise.
3107         (LABEL_RETURN_TYPE_STATE): Likewise.
3108         (LABEL_RETURN_LABELS): Likewise.
3109         (RETURN_MAP_ADJUSTED): Likewise.
3110         (LABEL_PENDING_CHAIN): Likewise.
3111
3112 2005-08-15  Tom Tromey  <tromey@redhat.com>
3113
3114         * Make-lang.in (JAVA_OBJS): Removed verify.o
3115         (java/verify.o): Removed.
3116         * verify.c: Removed.
3117         * lang.c (flag_new_verifier): Removed.
3118         (java_post_options): Updated.
3119         * java-tree.h (flag_new_verifier): Removed.
3120         (verify_jvm_instructions): Removed.
3121         * expr.c (pop_type_0): Assume flag_new_verifier is true.
3122         (build_java_check_indexed_type): Likewise.
3123         (expand_java_arraystore): Likewise.
3124         (expand_java_arrayload): Likewise.
3125         (pop_arguments): Likewise.
3126         (expand_byte_code): Likewise.
3127         (process_jvm_instruction): Likewise.
3128
3129 2005-08-10  Andrew Haley  <aph@redhat.com>
3130
3131         * java-gimplify.c (java_gimplify_modify_expr): Fix any pointer
3132         type mismatches to make legal GIMPLE.
3133
3134 2005-08-10  Robin Green <greenrd@greenrd.org>
3135
3136         PR java/23230:
3137         * parse.y (maybe_use_access_method): Generalize check from
3138         java.lang.Object to any superclass of current_class
3139
3140 2005-08-08  Nathan Sidwell  <nathan@codesourcery.com>
3141
3142         * class.c (build_class_ref): Wrap the primary class type in a
3143         NOP_EXPR.
3144         * parse.y (java_complete_lhs) <COMPONENT_REF case>: Extract the
3145         primary class type from the NOP_EXPR in which it was placed.
3146
3147 2005-07-28  Diego Novillo  <dnovillo@redhat.com>
3148
3149         * expr.c (expand_load_internal): Fix missing parens in
3150         predicate.
3151
3152 2005-07-28  Andrew Haley  <aph@redhat.com>
3153
3154         * expr.c (expand_load_internal): Convert to destination type.
3155
3156 2005-07-22  Manfred Hollstein  <mh@suse.com>
3157
3158         * verify-impl.c (check_class_constant): Fix uninitialised warnings.
3159         (check_constant): Likewise.
3160         (check_wide_constant): Likewise.
3161
3162 2005-07-20  Giovanni Bajo  <giovannibajo@libero.it>
3163
3164         Make CONSTRUCTOR use VEC to store initializers.
3165         * check-init.c (check_init): Update to cope with VEC in
3166         CONSTRUCTOR_ELTS.
3167         * class.c (make_field_value, make_method_value, get_dispatch_table,
3168         make_class_data, emit_symbol_table, emit_catch_table,
3169         emit_assertion_table): Use build_constructor_from_list instead of
3170         build_constructor.
3171         * constants.c (build_constants_constructor): Likewise.
3172         * java-gimplify.c (java_gimplify_new_array_init): Update to cope with
3173         VEC in CONSTRUCTOR_ELTS.
3174         * java-tree.h (START_RECORD_CONSTRUCTOR, PUSH_SUPER_VALUE,
3175         PUSH_FIELD_VALUE, FINISH_RECORD_CONSTRUCTOR): Create a VEC instead
3176         of a TREE_LIST.
3177         * jcf-write.c (generate_bytecode_insns): Update to cope with VEC in
3178         CONSTRUCTOR_ELTS.
3179         * parse.y (build_new_array_init): Use build_constructor_from_list
3180         instead of build_constructor.
3181         (patch_new_array_init): Update to cope with VEC in
3182         CONSTRUCTOR_ELTS.
3183         (array_constructor_check_entry): Likewise.
3184
3185 2005-07-12  Tom Tromey  <tromey@redhat.com>
3186
3187         * jvspec.c (lang_specific_driver): Put filelist_filename first on
3188         command line.
3189
3190 2005-07-12  Tom Tromey  <tromey@redhat.com>
3191
3192         PR java/19674:
3193         * parse-scan.y (interface_member_declaration): Added
3194         empty_statement.
3195
3196 2005-07-08  Daniel Berlin  <dberlin@dberlin.org>
3197         
3198         * java-tree.h (LABEL_RETURN_LABELS): Use decl_non_common.
3199         (LABEL_PENDING_CHAIN): Ditto.
3200         (LABEL_PC): Ditto.
3201         (DECL_BIT_INDEX): Ditto.        
3202
3203 2005-07-07  Bryce McKinlay  <mckinlay@redhat.com>
3204
3205         PR java/18119
3206         * parse.y (inner_class_accessible): New function. Logic moved from
3207         check_inner_class_access.
3208         (check_inner_class_access): Use inner_class_accessible.
3209         (resolve_inner_class): Simplify arguments. Create circularity hash
3210         here. Keep looking for classes if we found one that was inaccessible. 
3211         Return the inaccessible class only if there is no other match.
3212         (do_resolve_class): Update for new resolve_inner_class arguments.
3213         Don't create circularity_hash here.
3214
3215 2005-07-07  Bryce McKinlay  <mckinlay@redhat.com>
3216
3217         PR java/21045
3218         * parse.y (add_exception_to_throws): New function.
3219         (purge_unchecked_exceptions): Removed.
3220         (get_constructor_super): Renamed from verify_constructor_super. Now
3221         returns the super constructor after verification.
3222         (java_complete_expand_method): Don't use purge_unchecked_exceptions
3223         or save/restore the exception list.
3224         (check_thrown_exceptions): Add uncaught exceptions in anonymous
3225         class initializers and constructors to the throws clause of the method. 
3226
3227 2005-07-05  Bryce McKinlay  <mckinlay@redhat.com>
3228
3229         PR java/19674
3230         * parse.y (interface_member_declaration): Allow empty statements in
3231         interface declarations.
3232
3233 2005-07-05  Paolo Bonzini  <bonzini@gnu.org>
3234
3235         * Makefile.in (parse.o): Adjust dependencies.
3236         * parse.y: Include tree-dump.h.
3237
3238 2005-07-02  Joseph S. Myers  <joseph@codesourcery.com>
3239
3240         * class.c, decl.c, expr.c: Use '+' flag instead of %J.  Use 'q'
3241         flag for quoting.
3242
3243 2005-07-01  Andrew Pinski  <pinskia@physics.uc.edu>
3244
3245         * parse.y (issue_warning_error_from_context): Call
3246         pp_output_formatted_text to be able to get the buffer.
3247
3248 2005-06-30  Andrew Pinski  <pinskia@physics.uc.edu>
3249
3250         * parse.y (issue_warning_error_from_context): Update for the
3251         renaming of pp_format_text to pp_format.
3252
3253 2005-06-28  Paul Brook  <paul@codesourcery.com>
3254
3255         * decl.c (java_init_decl_processing): Call
3256         default_init_unwind_resume_libfunc.
3257
3258 2005-06-27  Tom Tromey  <tromey@redhat.com>
3259
3260         PR java/21540, PR java/13788:
3261         * parse.y (java_complete_lhs) <CASE_EXPR>: Use
3262         fold_constant_for_init.
3263         (patch_binop): Added 'folding' argument.  Updated all callers.
3264         (patch_unaryop) <NOP_EXPR>: New case.
3265         (fold_constant_for_init) <NOP_EXPR>: Likewise.
3266         (fold_constant_for_init) <COND_EXPR>: Fix sense of test.
3267
3268 2005-06-25  Jan Hubicka  <jh@suse.cz>
3269
3270         * builtins.c (define_builtin): Accept new flags parameter.
3271         (initialize_builtins): Mark the builtins const and nothrow accordingly.
3272
3273 2005-06-25  Kelley Cook  <kcook@gcc.gnu.org>
3274
3275         * all files: Update FSF address in copyright headers.
3276
3277 2005-06-24  Tom Tromey  <tromey@redhat.com>
3278
3279         * verify-impl.c (verify_instructions_0): Correctly handle
3280         situation where PC falls off end.
3281
3282 2005-06-23  Bryce McKinlay  <mckinlay@redhat.com>
3283
3284         PR java/20697
3285         * parse.y (find_most_specific_methods_list): Remove special case for
3286         inner classes.
3287
3288 2005-06-15  Tom Tromey  <tromey@redhat.com>
3289
3290         PR libgcj/21906:
3291         * class.c (make_method_value): Use soft_abstractmethod_node for
3292         abstract method.
3293         * java-tree.h (soft_abstractmethod_node): New define.
3294         (JTI_SOFT_ABSTRACTMETHOD_NODE): New enum constant.
3295         * decl.c (java_init_decl_processing): Initialize
3296         soft_abstractmethod_node.
3297
3298 2005-06-13  Geoffrey Keating  <geoffk@apple.com>
3299
3300         * Make-lang.in (rule for installing gcj.1): Depends on installdirs.
3301
3302 2005-06-13  Per Bothner  <per@bothner.com>
3303
3304         * expr.c (int highest_label_pc_this_method,
3305         start_label_pc_this_method): New globals.
3306         (lookup_label): Add start_label_pc_this_method to pc for label, and
3307         update highest_label_pc_this_method.  This prevents conflicts between
3308         labels from different methods.
3309         * java-tree.h: Declare new globals.
3310         * jcf-parse.c (parse_class_file): If needed bump
3311         start_label_pc_this_method and reset highest_label_pc_this_method.
3312
3313 2005-06-13  Tom Tromey  <tromey@redhat.com>
3314
3315         PR java/21844:
3316         * parse.y (nested_field_access_p): Handle case where outer field
3317         is inherited by enclosing class.
3318
3319 2005-06-12  Per Bothner  <per@bothner.com>
3320
3321         * class.c (inherits_from_p): Do load_class if needed.
3322
3323 2005-06-09  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3324
3325         * gjavah.c (error): Add ATTRIBUTE_PRINTF_1.
3326         * java-tree.h (parse_error_context): Move...
3327         * parse.h (parse_error_context): ... here, add ATTRIBUTE_GCC_DIAG.
3328         * parse.y (parse_warning_context): Add ATTRIBUTE_GCC_DIAG.
3329         * verify-impl.c (debug_print): Add ATTRIBUTE_PRINTF_1.
3330
3331 2005-06-08  Roger Sayle  <roger@eyesopen.com>
3332
3333         * typeck.c (convert): Only clear TREE_OVERFLOW on INTEGER_CST nodes.
3334
3335 2005-06-06  Jakub Jelinek  <jakub@redhat.com>
3336
3337         * jv-scan.c (fatal_error, warning, warning0): Use gmsgid instead of
3338         msgid for argument name.
3339         * gjavah.c (error): Likewise.
3340         * java-tree.h (parse_error_context): Likewise.
3341         * parse.y (parse_error_context, parse_warning_context,
3342         issue_warning_error_from_context): Likewise.
3343
3344 2005-06-01  Tom Tromey  <tromey@redhat.com>
3345
3346         PR java/21722:
3347         * class.c (build_static_field_ref): Don't fold constant fields if
3348         current class is from a .class file and we're using indirect
3349         dispatch.
3350
3351 2005-05-31  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3352
3353         * java/verify-glue.c: Don't include errors.h and include toplev.h.
3354         * java/Make-lang.in: Updates dependencies.
3355
3356 2005-05-26  Ranjit Mathew  <rmathew@hotmail.com>
3357
3358         PR java/19870.
3359         * java-tree.h (OUTER_FIELD_ACCESS_IDENTIFIER_P): Rename to
3360         NESTED_FIELD_ACCESS_IDENTIFIER_P.
3361         (FIELD_INNER_ACCESS): Rename to FIELD_NESTED_ACCESS.
3362         (FIELD_INNER_ACCESS_P): Rename to FIELD_NESTED_ACCESS_P.
3363         * jcf-write.c (generate_classfile): Use
3364         NESTED_FIELD_ACCESS_IDENTIFIER_P instead of
3365         OUTER_FIELD_ACCESS_IDENTIFIER_P.
3366         * parse.y (build_outer_field_access): Rename to
3367         build_nested_field_access. Support static fields and outer-to-inner
3368         class accesses.
3369         (outer_field_access_p): Rename to nested_field_access_p. Support
3370         static fields and generalise to outer-to-inner class and sibling
3371         inner class accesses.
3372         (outer_field_expanded_access_p): Rename to
3373         nested_field_expanded_access_p and support static fields.
3374         (outer_field_access_fix): Rename to nested_field_access_fix and
3375         support static fields.
3376         (build_outer_field_access_expr): Rename to
3377         build_nested_field_access_expr and support static fields.
3378         (build_outer_field_access_methods): Rename to
3379         build_nested_field_access_methods and support static fields. For
3380         static fields, generate accessors without class instance parameters.
3381         (build_outer_field_access_method): Rename to
3382         build_nested_field_access_method and support static fields.
3383         (build_outer_method_access_method): Use
3384         NESTED_FIELD_ACCESS_IDENTIFIER_P instead of
3385         OUTER_FIELD_ACCESS_IDENTIFIER_P.
3386         (resolve_expression_name): Consider static field accesses across
3387         nested classes.
3388         (resolve_qualified_expression_name): Likewise.
3389         (java_complete_lhs): Use nested_field_access_fix instead of
3390         outer_field_access_fix.
3391         (patch_unary_op): Rename outer_field_flag to nested_field_flag.
3392         Use nested_field_expanded_access_p instead of
3393         outer_field_expanded_access_p. Use nested_field_access_fix instead
3394         of outer_field_access_fix.
3395         (check_thrown_exceptions): Use NESTED_FIELD_ACCESS_IDENTIFIER_P
3396         instead of OUTER_FIELD_ACCESS_IDENTIFIER_P.
3397
3398 2005-05-26  Bryce McKinlay  <mckinlay@redhat.com>
3399
3400         * decl.c (GCJ_BINARYCOMPAT_ADDITION, 
3401         GCJ_BOOTSTRAP_LOADER_ADDITION): Removed.
3402         (FLAG_BINARYCOMPAT_ABI, FLAG_BOOTSTRAP_LOADER,
3403         MINOR_BINARYCOMPAT_ABI_VERSION): New.
3404         (GCJ_CURRENT_BC_ABI_VERSION): Use new method to calculate version ID.
3405         (parse_version): Calculate version ID using new method. Use bit-flags
3406         for flag_indirect_dispatch and flag_bootstrap_classes.
3407
3408 2005-05-25  Richard Henderson  <rth@redhat.com>
3409
3410         PR libgcj/21692
3411         * Make-lang.in (java/mangle.o): Depend on LANGHOOKS_DEF_H.
3412         * class.c (build_class_ref): Set DECL_CLASS_FIELD_P and
3413         DECL_CONTEXT; avoid pushdecl_top_level.
3414         (build_dtable_decl): Set DECL_VTABLE_P and DECL_CONTEXT.
3415         (layout_class): Don't SET_DECL_ASSEMBLER_NAME.
3416         (layout_class_method): Likewise.
3417         * decl.c (java_mark_cni_decl_local): New.
3418         (java_mark_class_local): Use it.
3419         * java-tree.h (DECL_LOCAL_CNI_METHOD_P): New.
3420         (DECL_CLASS_FIELD_P, DECL_VTABLE_P): New.
3421         (struct lang_decl_func): Add local_cni;
3422         (struct lang_decl_var): Add class_field, vtable.
3423         (java_mangle_decl): Declare.
3424         * lang.c (LANG_HOOKS_SET_DECL_ASSEMBLER_NAME): New.
3425         * mangle.c: Remove dup obstack.h; include langhooks-def.h.
3426         (mangle_obstack_1): New.
3427         (java_mangle_decl): Remove obstack argument.  Call mangle_class_field,
3428         mangle_vtable, and mangle_local_cni_method_decl.  Fall back to
3429         lhd_set_decl_assembler_name for things that don't need mangling.
3430         (mangle_class_field): Rename from java_mangle_class_field, make
3431         static, don't call init_mangling or finish_mangling.
3432         (mangle_vtable): Similarly.
3433         (mangle_local_cni_method_decl): New.
3434         (init_mangling): Remove obstack argument.  Use &mangle_obstack_1,
3435         gcc_assert, and MANGLE_RAW_STRING.
3436         (finish_mangling): Use gcc_assert, remove if 0 debugging code.
3437
3438 2005-05-25  DJ Delorie  <dj@redhat.com>
3439
3440         * class.c (set_constant_value): Move warning control from if() to
3441         warning(OPT_*).
3442
3443 2005-05-24  Richard Henderson  <rth@redhat.com>
3444
3445         * builtins.c (define_builtin): Don't call make_decl_rtl.
3446         * constants.c (build_constant_data_ref): Likewise.
3447         * class.c (build_utf8_ref): Likewise.
3448         (build_fieldref_cache_entry, build_static_field_ref): Likewise.
3449         (get_dispatch_table, layout_class_method): Likewise.
3450         (build_class_ref): Likewise. Don't set DECL_SIZE or DECL_SIZE_UNIT
3451         by hand.
3452         (make_local_function_alias): Don't SET_DECL_ASSEMBLER_NAME.
3453         (make_method_value): Use METHOD_ABSTRACT instead of DECL_RTL_SET_P
3454         to determine if we need a non-zero address.
3455         * decl.c (builtin_function): Don't call make_decl_rtl.
3456         (give_name_to_locals): Don't SET_DECL_ASSEMBLER_NAME.
3457         * expr.c (build_known_method_ref): Don't call make_decl_rtl.
3458         * resource.c (compile_resource_data): Likewise.
3459         * parse.y (resolve_field_access): Re-word comment to avoid
3460         building DECL_RTL.
3461
3462 2005-05-24  Richard Henderson  <rth@redhat.com>
3463
3464         * class.c (registered_class): Take it out of class_roots; turn into
3465         a vec of trees.
3466         (register_class): Make static.  Don't duplicate decl node.  Use
3467         VEC_safe_push.
3468         (emit_register_classes): Use VEC_iterate.  Use output_constant
3469         instead of assemble_integer.  Don't call mark_decl_referenced
3470         directly.