OSDN Git Service

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