]> gcc.gnu.org Git - gcc.git/blame - gcc/java/ChangeLog
re GNATS gcj/260 ("Klass.class" expression should cause Klass to be initialized)
[gcc.git] / gcc / java / ChangeLog
CommitLineData
f1ff439a
TT
12000-06-23 Tom Tromey <tromey@cygnus.com>
2
3 * parse.y (patch_incomplete_class_ref): Initialize the returned
4 class. For PR gcj/260.
5
9a7ab4b3
APB
62000-06-21 Alexandre Petit-Bianco <apbianco@cygnus.com>
7
8 * except.c (prepare_eh_table_type): Use `CATCH_ALL_TYPE'.
9
102000-06-20 Alexandre Petit-Bianco <apbianco@cygnus.com>
11
12 * check-init.c (ENABLE_JC1_CHECKING): Replaces ENABLE_CHECKING for
13 Java specific checks.
14 * expr.c (build_instanceof): CLASS_INTERFACE and CLASS_FINAL usage
15 screened by DECL_P.
16 * java-tree.def (CASE_EXPR): Marked 'e'.
17 (DEFAULT_EXPR): Likewise.
18 * jcf-parse.c (set_source_filename): CLASS_COMPLETE_P usage
19 screened by DECL_P.
20 * jcf-write.c (ENABLE_JC1_CHECKING): Replaces ENABLE_CHECKING for
21 Java specific checks.
22 (generate_bytecode_insns): Test try_block for BLOCK before using
23 BLOCK_EXPR_BODY.
24 * parse.y (build_wfl_wrap): Added `location' argument. Set
25 EXPR_WFL_LINECOL accordingly.
26 (dim_expr:): Wrap constants with WFLs.
27 (method_declarator): Use TREE_TYPE not TYPE_NAME on GET_CPC.
28 (resolve_package): Check for `stmt' not being a BLOCK before
29 building a debuggable statement with it.
30 (make_qualified_primary): Added extra parameter to build_wfl_wrap
31 invocation.
32 (resolve_field_access): Make sure `decl' is a DECL before treating
33 it as such.
34 (maybe_build_primttype_type_ref): Make sure `wfl''s node is an
35 IDENTIFIER_NODE before treating it as such.
36 (patch_new_array_init): Make sure `elt' is a TREE_LIST before
37 treating it as such.
38 (find_applicable_accessible_methods_list): CLASS_INTERFACE macro
39 to be applied only on non array types.
40
412000-06-16 Per Bothner <per@bothner.com>
42
43 * java-tree.h (LABEL_RETURN_LABELS, LABEL_PENDING_CHAIN): Don't
44 define in terms of DECL_RESULT, as that fails when --enable-checking.
45
ffb1f63d
KG
462000-06-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
47
48 * jcf-write.c (CHECK_PUT): Add static prototype. Make pointer
49 types the same in comparison.
50 (CHECK_OP): Add static prototype.
51
11cf4d18
JJ
522000-06-13 Jakub Jelinek <jakub@redhat.com>
53
54 * typeck.c (build_java_array_type): Set TYPE_USER_ALIGN.
55 * parse.y (java_complete_class): Set DECL_USER_ALIGN.
56 * parse.c: Rebuilt.
57
5ac9118e
KG
582000-06-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
59
60 * decl.c (create_primitive_vtable): Prototype.
61
62 * jcf-write.c (generate_bytecode_insns): Initialize variable
63 `saved_context'.
64
65 * lang.c (lang_get_alias_set): Mark parameter with ATTRIBUTE_UNUSED.
66
9a7ab4b3
APB
672000-06-06 Alexandre Petit-Bianco <apbianco@cygnus.com>
68
69 * parse.h (REGISTER_IMPORT): Use `chainon' to link new entries.
70 * parse.y (find_in_imports): Returned type changed to void,
71 leading comment fixed.
72 (register_package): New function.
73 (qualify_and_find): Likewise.
74 (package_declaration:): Use `register_package'.
75 (single_type_import_declaration:): Removed local variable
76 `node'. Added missing `;' for consistency.
77 (type_import_on_demand_declaration:): Use `chainon' to link new
78 entries.
79 (lookup_field_wrapper): Lookup local variables defined in outer
80 contexts first.
81 (java_complete_class): Don't reverse the list of imported on demand.
82 (do_resolve_class): Reorganized. Removed local variable
83 `original_name'. Call `qualify_and_find' with the current package
84 name, invoke `find_in_imports_on_demand' right after. Call
85 `qualify_and_find' with the packages we've seen so far. Fixed
86 operations numbering in comments.
87 (java_expand_class): Don't reverse `package_list'.
88 (find_most_specific_methods_list): New local variables `abstract'
89 and `candidates'. Use them to pick the right method.
90
14d075d8
TT
91Tue Jun 6 11:39:05 2000 Tom Tromey <tromey@ferrule.cygnus.com>
92
93 * parse.y (check_modifiers_consistency): Don't subtract out
94 `PUBLIC_TK' from argument to THIS_MODIFIER_ONLY.
95
603832a0
PT
962000-06-04 Philipp Thomas <pthomas@suse.de>
97
98 * Makefile.in (INTLLIBS): New.
99 (LIBS): Add above.
100 (DEPLIBS): Ditto.
101
8f975c18
APB
102Fri Jun 2 16:48:55 2000 Alexandre Petit-Bianco <apbianco@cygnus.com>
103
104 * class.c (get_dispatch_table): Build the vtable dummy entry list
105 element with a null purpose. Fixed leading comment.
106 (build_dtable_decl): Build an accurate dtable type when appropriate
107 and use it.
108
2e761e49
RH
1092000-06-02 Richard Henderson <rth@cygnus.com>
110
111 * lang.c (lang_get_alias_set): New.
112
0f145be8
APB
1132000-05-31 Alexandre Petit-Bianco <apbianco@cygnus.com>
114
115 * parse.y (resolve_field_access): Complete the DECL_INITIAL tree
116 before using it as the accessed field.
117
2771fe54
TT
1182000-05-31 Tom Tromey <tromey@cygnus.com>
119
120 * java-tree.h (boolean_array_vtable, byte_array_vtable,
121 char_array_vtable, short_array_vtable, int_array_vtable,
122 long_array_vtable, float_array_vtable, double_array_vtable):
123 Declare.
124 * expr.c (get_primitive_array_vtable): New function.
125 (create_primitive_vtable): New function.
126 (java_lang_expand_expr): Enable code to statically generate
127 arrays.
128 * decl.c (init_decl_processing): Create primitive vtables.
129 (boolean_array_vtable, byte_array_vtable, char_array_vtable,
130 short_array_vtable, int_array_vtable, long_array_vtable,
131 float_array_vtable, double_array_vtable): Define.
132
30a3caef
ZW
1332000-05-26 Zack Weinberg <zack@wolery.cumb.org>
134
135 * java/parse.y (find_applicable_accessible_methods_list):
136 Don't add an uninitialized value to the list.
137
b8c5b1c6
TT
1382000-05-25 Tom Tromey <tromey@cygnus.com>
139
40aaba2b
TT
140 * parse.y (resolve_field_access): Don't check DECL_LANG_SPECIFIC
141 when trying to see if field's class should be initialized. Always
142 initialize field's declaring class, not qualified class.
143 For PR gcj/162.
144
b8c5b1c6
TT
145 * parse.y (array_constructor_check_entry): Pass `wfl_value', not
146 `wfl_operator', to maybe_build_primttype_type_ref.
147 Fixes PR gcj/235.
148
6518c7b5
BM
1492000-05-23 Bryce McKinlay <bryce@albatross.co.nz>
150
151 * parse.y (patch_method_invocation): Don't try to lookup methods
152 in primitive types.
153
611a4b87
APB
1542000-05-02 Alexandre Petit-Bianco <apbianco@cygnus.com>
155
156 * parse.y (resolve_field_access): Call the appropriate <clinit>
157 before accessing the length of a static array. Craft a decl for
158 the field while its time. Fixes PR gcj/129.
159
6b48deee
APB
1602000-05-01 Alexandre Petit-Bianco <apbianco@cygnus.com>
161
162 * parse.y (resolve_package): Correctly set `*next' (was off by
163 one.)
164 (resolve_qualified_expression_name): Fixed comment.
165
0ba154aa
APB
166Thu Apr 27 17:47:34 2000 Alexandre Petit-Bianco <apbianco@cygnus.com>
167
168 * jcf-parse.c (jcf_parse_source): Reset current_class and
169 current_function_decl to NULL before parsing a new file.
170
c280e37a
APB
171Thu Apr 27 17:25:33 2000 Alexandre Petit-Bianco <apbianco@cygnus.com>
172
173 * parse.y (block_end:): If the collected block doesn't feature a
174 statement, insert an empty statement.
175
92d83515
APB
1762000-04-17 Alexandre Petit-Bianco <apbianco@cygnus.com>
177
178 * parse.y (maybe_yank_clinit): New function.
179 (maybe_generate_pre_expand_clinit): Always link <clinit> at the
180 end of the list of methods belonging to a class.
181 (java_complete_expand_method): Check whether <clinit> is really
182 necessary and expand it accordingly.
183
ec5bb3cf
APB
1842000-04-17 Alexandre Petit-Bianco <apbianco@cygnus.com>
185
186 * parse.y (fold_constant_for_init): Let VAR_DECL and FIELD_DECL be
187 processed by the method's switch statement.
188
67db0ce7
TT
1892000-05-19 Tom Tromey <tromey@cygnus.com>
190
191 * java-tree.h: Added init state enum.
192 * decl.c (emit_init_test_initialization): Initialize class
193 initialization check variable by looking at class' state.
194
43490bec
TT
1952000-05-19 Tom Tromey <tromey@cygnus.com>
196
197 * java-tree.h (build_instanceof): Declare.
198 (build_get_class): Declare.
199 * parse.y (patch_binop): Use build_instanceof.
200 * expr.c (build_instanceof): New function. If class is final,
201 don't make a function call.
202 (expand_java_INSTANCEOF): Use it.
203 (build_get_class): New function.
204
062edaed
AO
2052000-05-18 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
206
207 * jcf-write.c (generate_classfile): Scan the source_file for
208 slashes with the right pointer variable.
209
078721e1
AC
210Wed May 17 17:27:44 2000 Andrew Cagney <cagney@b1.cygnus.com>
211
212 * lang.c (lang_decode_option): Update -Wunused flags by calling
213 set_Wunused.
214 * decl.c (poplevel): Replace warn_unused with warn_unused_label.
215
46543024 2162000-05-09 Zack Weinberg <zack@wolery.cumb.org>
3b304f5b
ZW
217
218 * check_init.c (check_init): Constify local char *.
219 * class.c (push_class): Constify local char *.
220 * java_tree.h: Update prototypes.
221 * jcf-io.c (open_class): Constify filename parameter and
222 return value.
223 (find_class): Remove redundant string copy. Cast return from
224 open_class.
225 * jcf-parse.c (read_class, parse_class_file, yyparse):
226 Constify local char *.
227 * jcf-write.c (generate_bytecode_insns, generate_classfile):
228 Constify local char *.
229 * jcf.h (JCF): Constify filename and classname.
230 (JCF_FINISH): Cast args to FREE to char * when appropriate.
231 * lang.c (init_parse): Constify parameter and return value.
232 * lex.c (java_get_line_col): Constify filename parameter.
233 * parse.h: Constify parser_ctxt.filename. Update prototypes.
234 * parse.y (java_parser_context_suspend,
235 issue_warning_error_from_context, safe_layout_class): Constify
236 local char *.
237 * parse.c: Regenerate.
238
4c6a8973
TT
2392000-05-08 Tom Tromey <tromey@cygnus.com>
240
241 * expr.c (build_jni_stub): Cache the result of
242 _Jv_LookupJNIMethod.
243
e117276e
APB
2442000-05-05 Alexandre Petit-Bianco <apbianco@cygnus.com>
245
246 * decl.c (predef_filenames_size): Now 7.
247 (predef_filenames): New seventh entry.
248
652f2504
TT
2492000-05-04 Tom Tromey <tromey@cygnus.com>
250
251 * boehm.c (mark_reference_fields): Don't mark RawData fields.
252 Keep track of when we've seen a reference field after a
253 non-reference field.
254 (get_boehm_type_descriptor): Handle case where we see
255 non-reference fields but no trailing reference field.
256 * decl.c (rawdata_ptr_type_node): Define.
257 (init_decl_processing): Initialize rawdata_ptr_type_node.
258 * java-tree.h (rawdata_ptr_type_node): Declare.
259
ccedaff3
KG
2602000-05-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
261
262 * jcf-dump.c (SPECIAL_IINC): Ensure arguments match format
263 specifiers in calls to fprintf.
264
dd5d6281
TT
2652000-05-03 Andrew Haley <aph@cygnus.com>
266
267 * expr.c (build_java_jsr): Use emit_jump, not expand_goto.
268
269 * javaop.h (WORD_TO_INT): New function.
270 (IMMEDIATE_s4): Use WORD_TO_INT.
271 * jcf.h (JPOOL_INT): Ditto.
272
273 * gjavah.c (decode_signature_piece): Don't treat `$' as namespace
274 separator.
275
dd5d6281 2762000-04-19 Tom Tromey <tromey@cygnus.com>
7145d9fe
TT
277
278 * class.c (add_method_1): Set both DECL_EXTERNAL and METHOD_NATIVE
279 on native function.
280 * jcf-parse.c (parse_class_file): Call build_jni_stub for native
281 JNI methods.
282 * expr.c (build_jni_stub): New function.
283 * lang-specs.h: -fjni and -femit-class-file are incompatible.
284 * parse.c: Rebuilt.
285 * parse.y (java_complete_expand_methods): Expand a native method
286 and call build_jni_stub if -fjni given.
287 * lang-options.h: Document -fjni.
288 * lang.c (flag_jni): New global.
289 (lang_f_options): Added `jni' entry.
290 * java-tree.h (soft_lookupjnimethod_node,
291 soft_getjnienvnewframe_node, soft_jnipopsystemframe_node):
292 Declare.
293 (flag_jni): Declare.
294 (build_jni_stub): Declare.
295 (struct lang_decl): Added `native' flag.
296 (METHOD_NATIVE): Redefined to use `native' field of lang specific
297 structure.
298 * decl.c (soft_lookupjnimethod_node, soft_getjnienvnewframe_node,
299 soft_jnipopsystemframe_node): New globals.
300 (init_decl_processing): Set them. _Jv_InitClass only takes one
301 argument.
302
303 * java-tree.def: Put into `C' mode.
304
e815887f
TT
3052000-04-27 Tom Tromey <tromey@cygnus.com>
306
307 Fix for PR gcj/2:
308 * expr.c (expand_invoke): Generate check to see if object pointer
309 is null in nonvirtual invocation case.
310 * java-tree.h (soft_nullpointer_node): Declare.
311 * decl.c (soft_nullpointer_node): New global.
312 (init_decl_processing): Initialize soft_nullpointer_node.
313 * parse.y (invocation_mode): Return INVOKE_NONVIRTUAL for `final'
314 or `private' methods.
315 (patch_invoke): Handle INVOKE_NONVIRTUAL case.
316
ad81223c
APB
317Wed Apr 26 14:29:33 2000 Alexandre Petit-Bianco <apbianco@cygnus.com>
318
319 * decl.c (complete_start_java_method): Don't call _Jv_InitClass
320 from <clinit>
321
f1acc01e
TT
3222000-04-26 Tom Tromey <tromey@cygnus.com>
323
324 * zextract.c (find_zip_file_start): New function.
325 (read_zip_archive): Use it.
326
e803d3b2
APB
3272000-04-25 Alexandre Petit-Bianco <apbianco@cygnus.com>
328
329 * parse.y (register_incomplete_type): Handle JDEP_ANONYMOUS.
330
152de068
APB
3312000-04-24 Alexandre Petit-Bianco <apbianco@cygnus.com>
332
333 * class.c (common_enclosing_context_p): New function.
334 * java-tree.h (common_enclosing_context_p): Added prototype.
335 * parse.h (INNER_ENCLOSING_SCOPE_CHECK): Relaxed test to allow
336 classes sharing an outer context with the current instance.
337 * parse.y (build_access_to_thisn): Fixed leading comment.
338 (verify_constructor_super): New local `supper_inner'. Skip
339 enclosing context argument in the case of inner class constructors.
340 (patch_method_invocation): Insert proper context as second
341 parameter to pure inner class constructor super invocations.
342
93220702
APB
343Mon Apr 24 14:59:36 2000 Alexandre Petit-Bianco <apbianco@cygnus.com>
344
345 * parse.y (end_class_declaration): Reset the interface number
346 counter.
347
dfb99c83
APB
3482000-04-24 Alexandre Petit-Bianco <apbianco@cygnus.com>
349
350 * parse.y (source_start_java_method): Deleted unecessary code.
351 (patch_method_invocation): Fixed comment.
352
e60a8c26
RL
3532000-04-24 Robert Lipe <robertlipe@usa.net>
354
355 * parse.h (_jdep): Member `kind' now ENUM_BITFIELD.
356
3c8c10b8
TT
3572000-04-23 Tom Tromey <tromey@cygnus.com>
358
359 * boehm.c (mark_reference_fields): Use int_byte_position.
360
8a008c41
TT
3612000-04-22 Tom Tromey <tromey@cygnus.com>
362
363 * boehm.c (mark_reference_fields): Only call byte_position on
364 non-static fields.
365
d5f76aba
TT
3662000-04-22 Tom Tromey <tromey@cygnus.com>
367
368 * boehm.c (mark_reference_fields): Added `last_view_index'
369 argument. Use DECL_FIELD_OFFSET to determine field's offset.
370
a40d21da
APB
371Thu Apr 20 17:41:28 2000 Mo DeJong <mdejong@cygnus.com>
372
373 * parse.h (INTERFACE_INNER_MODIFIERS): New macro.
374 * parse.y (check_class_interface_creation): Fixed comments. Select
375 permitted modifiers for (inner) interfaces. Changed error message
376 to report rejected modifiers used with local classes.
377
3782000-04-20 Alexandre Petit-Bianco <apbianco@cygnus.com>
379
380 * parse.h (INNER_ENCLOSING_SCOPE_CHECK): Immediate inner classes
381 of directly inherited type considered in scope.
382 * parse.y (do_resolve_class): Search inherited classes for inner
383 classes.
384
473e7b07
TT
3852000-04-20 Tom Tromey <tromey@cygnus.com>
386
387 * parse.y (not_accessible_p): Use member's class, not current
388 class, when doing inheritance check for protected reference.
389 Fixes PR gcj/124.
390
c52fbf0f
JS
391Thu Apr 20 18:20:58 2000 Jason Schroeder <shrode@subnature.com>
392
393 * jcf-dump.c (SPECIAL_IINC): Fixed typo printing iinc instruction.
394
f2760b27
APB
3952000-04-19 Alexandre Petit-Bianco <apbianco@cygnus.com>
396
397 * parse.y (lookup_field_wrapper): Search for final local aliases.
398 (resolve_expression_name): Let lookup_field_wrapper search for
399 final local aliases. Force the value of `name' if one is found.
400 (qualify_ambiguous_name): CONVERT_EXPR is enough to now we have
401 an expression name. Fixed comments.
402
807bc1db
APB
4032000-04-19 Alexandre Petit-Bianco <apbianco@cygnus.com>
404
405 * parse.y (yyerror): `msg' can be null, don't use it in that case.
406
ecb36604
TT
4072000-04-19 Tom Tromey <tromey@cygnus.com>
408
409 * gjavah.c (cxx_keyword_subst): Avoid potential infinite loop.
410
48a840d9
APB
4112000-04-18 Alexandre Petit-Bianco <apbianco@cygnus.com>
412
413 * parse.y (maybe_make_nested_class_name): Use `obstack_grow0'.
414
83c1f628
TT
4152000-04-18 Tom Tromey <tromey@cygnus.com>
416
417 PR gcj/211:
418 * gjavah.c (utf8_cmp): Changed return value.
419 (cxx_keyword_subst): Handle all C++ keywords. Allocate new return
420 result.
421 (cxx_keywords): New global.
422 (get_field_name): Handle new result of cxx_keyword_subst.
423 (print_method_info): Likewise.
424
a7384840
BM
4252000-04-17 Bryce McKinlay <bryce@albatross.co.nz>
426
427 * gjavah.c (print_name_for_stub_or_jni): Don't prefix method names
428 with a newline, for CNI.
429 (print_stub_or_jni): Print a space or newline before method name for
430 CNI as well as JNI.
431 (print_cxx_classname): Don't write leading "::" in CNI stub method.
432 (process_file): Include gcj/cni.h if generating CNI stubs.
433
3e0768f0
TT
4342000-04-16 Tom Tromey <tromey@cygnus.com>
435
436 * gjavah.c (decompile_method): Use print_field_name.
437 Fixes PR gcj/205.
438
48a840d9
APB
4392000-04-14 Alexandre Petit-Bianco <apbianco@cygnus.com>
440
441 * parse.y (java_expand_classes): Reverse the package list once.
442 (java_complete_lhs): PLUS_EXPR: don't try rhs and lhs at string
443 reduction.
444 (patch_binop): New temp `cn'. Call patch_string on LHS/RHS of
445 the `==' and `!=' operators.
446
cedea510
APB
4472000-04-05 Alexandre Petit-Bianco <apbianco@cygnus.com>
448
449 * jcf-write.c (generate_bytecode_insns): At invokation time,
450 always relate an interface method to the type of its selector.
451
e803d3b2
APB
4522000-04-05 Tom Tromey <tromey@cygnus.com>
453
454 Fix for PR gcj/2:
455 * expr.c (expand_invoke): Generate check to see if object pointer
456 is null in nonvirtual invocation case.
457 * java-tree.h (soft_nullpointer_node): Declare.
458 * decl.c (soft_nullpointer_node): New global.
459 (init_decl_processing): Initialize soft_nullpointer_node.
460 * parse.y (invocation_mode): Return INVOKE_NONVIRTUAL for `final'
461 or `private' methods.
462 (patch_invoke): Handle INVOKE_NONVIRTUAL case.
463
bc2874c9
TT
4642000-04-05 Tom Tromey <tromey@cygnus.com>
465
466 Fix for PR gcj/140:
467 * parse.y (check_final_assignment): Recognize assignments to the
468 `length' field of an array when generating class files.
469
256172c4
APB
4702000-04-05 Alexandre Petit-Bianco <apbianco@cygnus.com>
471
472 * class.c (decl_hash): Prototype removed.
473 (decl_compare): Likewise.
474
e0fc4118
TT
4752000-04-05 Tom Tromey <tromey@cygnus.com>
476
477 * parse.h (THIS_MODIFIER_ONLY): Changed meaning of `v' parameter.
478 * parse.y (check_modifiers_consistency): Check for final/volatile
479 clash. Fixes PR gcj/164.
480
e0422ed0
APB
4812000-04-05 Alexandre Petit-Bianco <apbianco@cygnus.com>
482
483 * class.c: (java_hash_hash_tree_node): Renamed from `decl_hash',
484 made global.
485 (java_hash_compare_tree_node): Renamed from `decl_compare, made
486 global.
487 (add_method_1): Use `java_hash_hash_tree_node' and
488 `java_hash_compare_tree_node'.
489 * java-tree.h: (java_hash_hash_tree_node): Prototyped.
490 (java_hash_compare_tree_node): Likewise.
491 * parse.y (find_applicable_accessible_methods_list): Create,
492 delete and use a hash table to remember already searched interfaces.
493
4200941b
MW
4942000-04-03 Matt Welsh <mdw@cs.berkeley.edu>
495
496 * jcf-depend.c (add_entry): Fixed bug where list was always replaced
497 with latest entry.
498
c0b864fc
KG
4992000-04-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
500
501 * boehm.c (mark_reference_fields, set_bit): Prototype.
502 (set_bit): Un-ANSI-fy definition.
503
504 * class.c (init_test_hash_newfunc, decl_hash, decl_compare):
505 Prototype.
506
507 * decl.c (emit_init_test_initialization): Likewise.
508
509 * gjavah.c (jni_print_char): Likewise.
510
511 * parse.y (create_new_parser_context): Likewise.
512
7a678b64 513Thu Mar 30 15:26:56 2000 Alexandre Petit-Bianco <apbianco@cygnus.com>
64ea4a5e
APB
514
515 * expr.c (java_lang_expand_expr): Added Anthony's Thu Jan 6 2000
516 patch missing hunk. Fixed indentation.
517
05411ecf
TT
5182000-03-30 Tom Tromey <tromey@cygnus.com>
519
520 * gjavah.c (D_NAN_MASK): Only define as word-reversed when
521 HOST_FLOAT_WORDS_BIG_ENDIAN and HOST_WORDS_BIG_ENDIAN disagree.
522
acbedd7c
APB
5232000-03-28 Alexandre Petit-Bianco <apbianco@cygnus.com>
524
525 * parse-scan.y (pop_class_context): Reset `inner_qualifier_length'
526 when negative *before* using it as an array index.
527 * ChangeLog: Fixed typo.
528
0981a859
APB
5292000-03-28 Alexandre Petit-Bianco <apbianco@cygnus.com>
530
531 * parse-scan.y (pop_class_context): Reset `inner_qualifier_length'
532 to 0 when it reaches -1.
533
5342000-03-27 Alexandre Petit-Bianco <apbianco@cygnus.com>
535
536 * jcf-parse.c (get_constant): Properly cast `num' during the
acbedd7c 537 invocation of `add_double'.
0981a859
APB
538 * jcf-write.c (push_long_const): Properly cast `lo' before
539 comparing it to short bounds.
540 * parse-scan.y (interface_declaration:): Rule re-arrange so that
541 `interface_body:' is reduced after the current interface is
542 pushed.
543
a843e0ce
TT
5442000-03-26 Tom Tromey <tromey@cygnus.com>
545
546 * jvspec.c (jvgenmain_spec): Add `%{<...}' construct for each
547 Java-specific `-f' option.
548
ad41cc2a
RK
549Sun Mar 26 11:37:55 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
550
551 * decl.c (init_decl_processing): Only call initialize_sizetypes once.
552 Adjust order of making types.
553 Make bitsize_*_node values.
554
770ae6cc
RK
555Sat Mar 25 09:12:10 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
556
557 * class.c (make_field_value): Use byte_position.
558 * expr.c (JAVA_ARRAY_LENGTH_OFFSET): Use byte_position.
559 (java_array_data_offset): Likewise.
560 * java-tree.h (MAYBE_CREATE_TYPE_TYPE_LANG_SPECIFIC): Add case to
561 bzero call.
562
165f37bc
APB
5632000-03-22 Alexandre Petit-Bianco <apbianco@cygnus.com>
564
565 * parse.y (check_abstract_method_definitions): New local
566 `end_type_reached'. Make sure we also consider `end_type'.
0981a859
APB
567 (java_check_abstract_method_definitions): Make sure we eventually
568 consider `java.lang.Object'.
569 (maybe_use_access_method): Don't use access method if not in the
570 context of a pure inner class or if the method's context is right.
571 (find_applicable_accessible_methods_list): New static flag
165f37bc 572 `object_done'. Don't search abstract classes as interfaces. Fixed
0981a859
APB
573 indentation. Fixed the `java.lang.Object' only search. Search
574 class interface(s) first, then fully search enclosing contexts.
575 (find_most_specific_methods_list): Pick the closest candidate when
165f37bc
APB
576 they're all abstract.
577
124906f9
APB
578Mon Mar 20 08:58:51 2000 Alexandre Petit-Bianco <apbianco@cygnus.com>
579
580 * jcf-write.c (generate_bytecode_insns): TRY_FINALLY_EXPR:
581 properly initialize `finished_label.' Don't emit gotos for empty
582 try statements.
583
c14f7160
ML
584