OSDN Git Service

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