OSDN Git Service

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