]>
Commit | Line | Data |
---|---|---|
809e3e7f NS |
1 | 2004-07-06 Nathan Sidwell <nathan@codesourcery.com> |
2 | ||
3 | * java-tree.h (CLASS_HAS_SUPER_FLAG): Use BINFO_FLAG_1. | |
4 | * class.c (add_interface_do): Use BINFO_VIRTUAL_P. | |
5 | ||
95b4aca6 NS |
6 | 2004-07-05 Nathan Sidwell <nathan@codesourcery.com> |
7 | ||
8 | * class.c (make_class): Use make_tree_binfo. | |
9 | (set_super_info, add_interface_do): Likewise. | |
10 | * java-tree.h (CLASS_HAS_SUPER_FLAG): Expect a BINFO. | |
11 | ||
dafa622b RM |
12 | 2004-07-04 Ranjit Mathew <rmathew@hotmail.com> |
13 | ||
14 | * verify.c: Correct array element access formatting thinko. | |
15 | ||
c516c1ff RM |
16 | 2004-07-04 Ranjit Mathew <rmathew@hotmail.com> |
17 | ||
18 | * verify.c: Insert a short blurb at the start referring to the JVMS. | |
19 | (merge_type_state): Remove redundant nested if statement. | |
20 | (verify_jvm_instructions): Ensure current_subr is initialised to | |
21 | NULL_TREE. | |
22 | Minor formatting fixes all over the place. | |
23 | ||
82c82743 RH |
24 | 2004-07-02 Richard Henderson <rth@redhat.com> |
25 | ||
26 | * jcf-write.c (generate_bytecode_insns <case SAVE_EXPR>): Rewrite. | |
27 | ||
c9b9aa64 RH |
28 | 2004-07-01 Richard Henderson <rth@redhat.com> |
29 | ||
30 | * class.c (registerClass_libfunc): Remove. | |
31 | (init_class_processing): Don't set it. | |
32 | (emit_register_classes): Take list_p parameter. Fill it in | |
33 | with _Jv_RegisterClass calls. | |
34 | * decl.c (java_init_decl_processing): Don't call | |
35 | init_resource_processing. | |
36 | * jcf-parse.c (java_emit_static_constructor): New. | |
37 | (java_parse_file): Call it. | |
38 | * resource.c (registerResource_libfunc): Remove. | |
39 | (init_resource_processing): Remove. | |
40 | (write_resource_constructor): Take list_p parameter. Fill it in | |
41 | with _Jv_RegisterResource calls. | |
42 | * java-tree.h: Update prototypes. | |
43 | ||
9c5fdae6 BM |
44 | 2004-06-29 Bryce McKinlay <mckinlay@redhat.com> |
45 | ||
46 | PR java/1262 | |
47 | * class.c (layout_class_method): Do not override package-private | |
48 | method if its in a different package. | |
49 | (split_qualified_name): Move here from parse.y. Rename from | |
50 | breakdown_qualified. Add comment. | |
51 | (in_same_package): Move here from parse.y. Add comment. | |
52 | * java-tree.h (break_down_qualified, in_same_package): Declare. | |
53 | (in_same_package): Likewise. | |
54 | * parse.y (breakdown_qualified, in_same_package): Moved to class.c. | |
55 | Callers updated. | |
56 | ||
ba60e475 AH |
57 | 2004-06-29 Andrew Haley <aph@redhat.com> |
58 | ||
59 | * except.c (expand_start_java_handler): Push a new binding level. | |
60 | Don't build a TRY_CATCH_EXPR now, we'll do it later. Call | |
61 | register_exception_range() to register where we'll do it. | |
62 | (expand_end_java_handler): Remove old bogus code. Replace with | |
63 | new logic that simply builds TRY_CATCH_EXPRs and inserts them at | |
64 | the top of the expression we're curently building. | |
65 | (maybe_end_try): Delete. | |
66 | * decl.c (binding_level.exception_range): New field. | |
67 | (clear_binding_level): Add field exception_range. Reformat. | |
68 | (poplevel): Call expand_end_java_handler(). | |
69 | (poplevel): Call java_add_stmt only if functionbody is false. | |
70 | (maybe_poplevels): Don't call maybe_end_try() from here. | |
71 | (end_java_method): Clear no longer used trees in function decl. | |
72 | (register_exception_range): New function. | |
73 | * java-tree.h (register_exception_range, struct eh_range): Declare. | |
74 | ||
a0cc19cb BM |
75 | 2004-06-28 Bryce McKinlay <mckinlay@redhat.com> |
76 | ||
77 | * jcf-write.c (get_classfile_modifiers): Formatting fixes. | |
78 | ||
fe0b9fb5 RM |
79 | 2004-06-27 Ranjit Mathew <rmathew@hotmail.com> |
80 | ||
81 | Formatting fixes. | |
82 | * expr.c (class_has_finalize_method): Fix method name indentation. | |
83 | (expand_java_call): Remove K&R style parameter declaration. | |
84 | (expand_invoke): Fix statement indentation. | |
85 | (expand_java_field_op): Likewise. | |
86 | * parse-scan.y: Fix typo. | |
87 | (reset_report): Fix method name indentation. | |
88 | * parse.y (unresolved_type_p, build_expr_block): Remove extra blank | |
89 | line. Fix typos. | |
90 | * verify.c (verify_jvm_instructions): Document parameters, insert | |
91 | page break. | |
92 | * lang.c (lang_init_source): Fix method name indentation. | |
93 | * class.c (common_enclosing_context_p): Likewise. | |
94 | (emit_symbol_table): Fix parameter list indentation. | |
95 | * decl.c (add_stmt_to_compound, java_add_stmt): Remove K&R style | |
96 | parameter declaration. | |
97 | * constants.c: Fix copyright notice indentation. | |
98 | * typeck.c (find_method_in_superclasses): Fix parameter list | |
99 | indentation. | |
100 | (find_method_in_interfaces): Likewise. | |
101 | * zextract.c (makelong): Fix method name indentation. | |
102 | ||
0f6cd83f BM |
103 | 2004-06-26 Bryce McKinlay <mckinlay@redhat.com> |
104 | ||
105 | PR java/15715. | |
106 | * parse.y (create_interface): Set correct access modifiers for | |
107 | interfaces. | |
108 | * jcf-write.c (get_classfile_modifiers): New function. | |
109 | (generate_classfile): Use get_classfile_modifiers, not | |
110 | get_access_flags. | |
111 | ||
112 | 2004-06-26 Bryce McKinlay <mckinlay@redhat.com> | |
113 | ||
114 | * parse.y (register_incomplete_type): Set JDEP_ENCLOSING for "super" | |
115 | dependency to current parser context, not NULL_TREE, for top-level | |
116 | classes. | |
117 | (jdep_resolve_class): Enable member access check for all inner | |
118 | class dependencies. | |
119 | ||
808fd801 BM |
120 | 2004-06-26 Bryce McKinlay <mckinlay@redhat.com> |
121 | ||
122 | * parse.y (qualify_and_find): Pass type decl, not identifier, to | |
123 | load_class. | |
124 | ||
6573a104 BM |
125 | 2004-06-26 Bryce McKinlay <mckinlay@redhat.com> |
126 | ||
127 | PR java/15734 | |
128 | * expr.c (expand_java_field_op): Ensure that target class for static | |
129 | field access has been loaded. | |
130 | ||
ed7f2369 BM |
131 | 2004-06-26 Bryce McKinlay <mckinlay@redhat.com> |
132 | Ranjit Mathew <rmathew@hotmail.com> | |
133 | ||
134 | PR java/1207, java/16178 | |
135 | * jcf-parse.c (load_class): Return immediately if passed a type decl | |
136 | where CLASS_FROM_SOURCE_P is set. Remove FIXME. | |
137 | * parse.y (do_resolve_class): Remove checks for CLASS_FROM_SOURCE_P | |
138 | before calling load_class. | |
139 | (qualify_and_find): Likewise. | |
140 | (find_in_imports_on_demand): Likewise. | |
141 | (find_applicable_accessible_methods_list): Likewise. | |
142 | ||
143 | 2004-06-24 Bryce McKinlay <mckinlay@redhat.com> | |
144 | ||
145 | * parse.y (java_layout_seen_class_methods): Don't call load_class | |
146 | on class defined by source parser. | |
147 | ||
d01a8ee0 BM |
148 | 2004-06-23 Bryce McKinlay <mckinlay@redhat.com> |
149 | ||
150 | * parse.y (set_nested_class_simple_name_value): Removed. | |
151 | (java_complete_expand_class): Remove calls to | |
152 | set_nested_class_simple_name_value. | |
153 | ||
56c5197b AH |
154 | 2004-06-22 Andrew Haley <aph@redhat.com> |
155 | Ranjit Mathew <rmathew@hotmail.com> | |
156 | ||
157 | Fixes PR java/16113. | |
158 | * decl.c (force_poplevels): Remove call to expand_end_bindings. | |
159 | ||
815c5191 RM |
160 | 2004-06-22 Ranjit Mathew <rmathew@hotmail.com> |
161 | ||
162 | * parse.y (create_class): Correct diagnostic message about | |
163 | java.lang.Object extending anything else. | |
164 | ||
44de5aeb RK |
165 | 2004-06-21 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
166 | ||
167 | * class.c (build_class_ref): Add new operand for COMPONENT_REF. | |
168 | (build_static_field_ref): Likewise and add new operands for ARRAY_REF. | |
169 | * constants.c (build_ref_from_constant_pool): Likewise. | |
170 | * expr.c (build_java_array_length_access): Likewise. | |
171 | (build_get_class, build_field_ref, build_known_method_ref): Likewise. | |
172 | (invoke_build_dtable, build_invokevirtual): Likewise. | |
173 | (build_invokeinterface, java_expand_expr): Likewise. | |
174 | (emit_init_test_initialization): Likewise. | |
175 | * java-gimplify.c (java_gimplify_new_array_init): Likewise. | |
176 | * parse.y (make_qualifed_name, build_array_ref): Likewise. | |
177 | ||
979bf9a1 AH |
178 | 2004-06-21 Andrew Haley <aph@redhat.com> |
179 | ||
180 | * java-gimplify.c (java_gimplify_block): set TREE_USED on the new | |
181 | block. | |
182 | ||
b40410b9 JM |
183 | 2004-06-21 Joseph S. Myers <jsm@polyomino.org.uk> |
184 | ||
185 | * jcf.h (struct JCF): Change java_source, right_zip and finished | |
186 | to unsigned int. | |
187 | * lex.h (struct java_lexer): Change hit_eof, read_anything, | |
188 | byte_swap and use_fallback to unsigned int. | |
189 | * parse.h (struct _jdep): Change flag0 to unsigned int. | |
190 | ||
cfb6b4b8 RM |
191 | 2004-06-17 Ranjit Mathew <rmathew@hotmail.com> |
192 | ||
193 | Fixes PR java/13948 | |
194 | * parse.y (java_layout_seen_class_methods): Ensure class is loaded | |
195 | before trying to lay out its methods. | |
196 | * jcf-parse.c (read_class): Track parsed files using canonical paths | |
197 | obtained via lrealpath from libiberty. | |
198 | (java_parse_file): Likewise. | |
199 | (parse_source_file_1): Rename formal parameter to reflect its | |
200 | modified purpose. Minor formatting fix. | |
201 | ||
096f22f4 PB |
202 | 2004-06-15 Paolo Bonzini <bonzini@gnu.org> |
203 | ||
204 | * class.c (emit_register_classes): Make the function uninlinable, | |
205 | do not set current_function_cannot_inline. | |
206 | * resource.c (write_resource_constructor): Do not reset | |
207 | flag_inline_functions around rest_of_compilation. | |
208 | ||
c1b69e3c AP |
209 | 2004-06-08 Andrew Pinski <pinskia@physics.uc.edu> |
210 | ||
211 | PR java/15769 | |
212 | * expr.c (java_truthvalue_conversion): Handle | |
213 | UNEQ_EXPR, UNLE_EXPR, UNGE_EXPR, UNLT_EXPR, UNGT_EXPR, | |
214 | ORDERED_EXPR, and UNORDERED_EXPR as comparison operators, | |
215 | i.e. return the expression. | |
216 | ||
a757585a MA |
217 | 2004-06-03 Mark G. Adams <mark.g.adams@sympatico.ca> |
218 | ||
219 | * gjavah.c: Include version.h | |
220 | ||
1aae9cdc BM |
221 | 2004-05-31 Bryce McKinlay <mckinlay@redhat.com> |
222 | ||
223 | * jcf-write.c (generate_bytecode_conditional): Correct handling | |
224 | of unordered conditionals. Add comment. | |
225 | ||
edf74484 RM |
226 | 2004-05-29 Ranjit Mathew <rmathew@hotmail.com> |
227 | Per Bothner <per@bothner.com> | |
228 | ||
229 | * java-tree.h (DECL_LOCAL_FINAL_IUD): New macro to test if a | |
230 | local variable was initialised upon declaration. | |
231 | * parse.y (declare_local_variables): Set DECL_LOCAL_FINAL_IUD if | |
232 | variable was final and initialised upon declaration. | |
233 | * check-init.c (check_final_reassigned): Give error only if a blank | |
234 | final is not definitely unassigned or if an initialised final is | |
235 | reassigned. | |
236 | (check_bool_init): Respect JLS2 16.1.7 requirements for boolean | |
237 | assignment expressions. Remove case MODIFY_EXPR, label do_default. | |
238 | (check_init): Perform initialised-variable-removing-optimisation | |
239 | only on non-final local variables. | |
240 | ||
138c4fd4 BM |
241 | 2004-05-28 Bryce McKinlay <mckinlay@redhat.com> |
242 | ||
70c39ccb BM |
243 | * jcf-write.c (generate_bytecode_conditional): Handle binops |
244 | UNLT_EXPR, UNLE_EXPR, UNGT_EXPR, UNGE_EXPR, UNEQ_EXPR, | |
245 | and LTGT_EXPR. | |
138c4fd4 BM |
246 | (generate_bytecode_insns): Likewise. |
247 | ||
711e3187 BM |
248 | 2004-05-28 Bryce McKinlay <mckinlay@redhat.com> |
249 | ||
250 | * check-init.c (check_init): Handle binops UNLT_EXPR, UNLE_EXPR, | |
251 | UNGT_EXPR, UNGE_EXPR, UNEQ_EXPR, and LTGT_EXPR. | |
252 | ||
ca60dce2 BM |
253 | 2004-05-28 Bryce McKinlay <mckinlay@redhat.com> |
254 | ||
255 | * gcj.texi (Object allocation): Remove _Jv_AllocBytes. | |
256 | (Mixing with C++): Document JvAllocBytes and RawDataManaged. | |
257 | ||
062583ea BM |
258 | 2004-05-26 Bryce McKinlay <mckinlay@redhat.com> |
259 | ||
260 | * decl.c (struct binding_level): Add GTY marker. Compile | |
261 | binding_depth unconditionally. | |
262 | (current_binding_level, free_binding_level, global_binding_level): | |
263 | Likewise. | |
264 | (clear_binding_level): Unconditionally set binding_depth. | |
265 | (make_binding_level): Use ggc_alloc_cleared, not xmalloc. | |
266 | ||
b9d861bc BM |
267 | 2004-05-26 Bryce McKinlay <mckinlay@redhat.com> |
268 | ||
269 | * lex.c (java_new_lexer): Set 'encoding'. | |
270 | (java_read_char): Improve error message for unrecognized characters. | |
271 | * lex.h (struct java_lexer): New field 'encoding'. | |
272 | ||
4f4e53dd PB |
273 | 2004-05-23 Paolo Bonzini <bonzini@gnu.org> |
274 | ||
275 | * Make-lang.in: Link in $(LIBCPP) instead of mkdeps.o. | |
276 | ||
f1865cde MW |
277 | 2004-05-21 Mark Wielaard <mark@klomp.org> |
278 | ||
279 | * gjavah.c (print_stub_or_jni): Mark functions only JNIEXPORT, not | |
280 | extern. | |
281 | ||
20cb64fd PB |
282 | 2004-05-19 Paolo Bonzini <bonzini@gnu.org> |
283 | ||
284 | * typeck.c: Remove non-printable character 160. | |
285 | ||
66ba7273 RM |
286 | 2004-05-17 Ranjit Mathew <rmathew@hotmail.com> |
287 | ||
288 | * check-init.c: Correct minor typos. | |
289 | ||
eadf906f DN |
290 | 2004-05-13 Diego Novillo <dnovillo@redhat.com> |
291 | ||
292 | * Make-lang.in, expr.c, java-gimplify.c: Rename | |
293 | tree-simple.[ch] to tree-gimple.[ch]. | |
294 | ||
c9ecc336 RM |
295 | 2004-05-14 Ranjit Mathew <rmathew@hotmail.com> |
296 | ||
297 | * java-gimplify.c (java_gimplify_expr): Correct minor typos. | |
298 | ||
6de9cd9a DN |
299 | 2004-05-13 Diego Novillo <dnovillo@redhat.com> |
300 | ||
301 | Merge from tree-ssa-20020619-branch. See | |
302 | ChangeLog.tree-ssa for details. | |
303 | ||
304 | * Make-lang.in, builtins.c, check-init.c, class.c, | |
305 | constants.c, decl.c, except.c, expr.c, java-except.h, | |
306 | java-tree.def, java-tree.h, jcf-parse.c, jcf-write.c, | |
307 | lang.c, lang.opt, parse.y, resource.c: Merged. | |
308 | * java-gimplify.c: New file. | |
309 | ||
af434fa7 AH |
310 | 2004-05-10 Andrew Haley <aph@redhat.com> |
311 | ||
312 | * parse.y (create_class): Set TYPE_VFIELD. | |
313 | * decl.c (java_init_decl_processing): Likewise. | |
314 | ||
315 | * expr.c (build_invokevirtual): Remove DECL_VINDEX offset adjustment. | |
316 | * class.c (make_method_value): Replace DECL_VINDEX with call to | |
317 | get_method_index(). | |
318 | (get_dispatch_vector): Likewise. | |
319 | (layout_class_method): Likewise. | |
320 | Replace set of DECL_VINDEX with call to set_method_index(). | |
321 | (set_method_index): New function. | |
322 | (get_method_index): New function. | |
323 | * java-tree.h (set_method_index): New function decl. | |
324 | (get_method_index): New function decl. | |
325 | ||
7cef5027 AP |
326 | 2004-05-10 Andrew Pinski <pinskia@physics.uc.edu> |
327 | ||
328 | * parse.y (check_pkg_class_access): Add new argument | |
329 | and use it when cl is NULL to call lookup_cl on it. | |
330 | (parser_check_super_interface): Do not call lookup_cl. | |
331 | Pass this_decl to check_pkg_class_access and NULL | |
332 | instead of lookup_cl. | |
333 | (parser_check_super): Update for change in | |
334 | check_pkg_class_access. | |
335 | (do_resolve_class): Likewise. | |
336 | (process_imports): Likewise. | |
337 | (find_in_imports_on_demand): Likewise. | |
338 | (resolve_qualified_expression_name): Likewise. | |
339 | ||
8ae6595c RM |
340 | 2004-05-06 Ranjit Mathew <rmathew@hotmail.com> |
341 | ||
342 | Fixes PR java/9685, PR java/15073 | |
343 | * parse.y (accessibility_string): New method. | |
344 | (not_accessible_field_error): Use accessibility_string() | |
345 | instead of java_accstring_lookup(). | |
346 | (resolve_qualified_expression_name): Check with | |
347 | check_pkg_class_access() before allowing access using | |
348 | qualified names. | |
349 | Fix comment typo. | |
350 | Use check_pkg_class_access() instead of not_accessible_p() | |
351 | for unqualified types. | |
352 | (not_accessible_p): Use DECL_CONTEXT (member) instead of | |
353 | REFERENCE for package-private access checking. | |
354 | (patch_method_invocation): Use accessibility_string() instead | |
355 | of java_accstring_lookup(). | |
356 | ||
3fb577a5 RM |
357 | 2004-04-30 Ranjit Mathew <rmathew@hotmail.com> |
358 | ||
359 | Fixes PR java/15133 | |
360 | * gjavah.c (struct method_name): Add member is_native. | |
361 | (overloaded_jni_method_exists_p): Match candidate method only if | |
362 | it is native. | |
363 | (print_method_info): Initialise is_native flag from the method's | |
364 | access flags. | |
365 | ||
2d99c042 RS |
366 | 2004-04-30 Roger Sayle <roger@eyesopen.com> |
367 | ||
368 | * builtins.c (java_builtins): Add acos, asin, ceil and floor. | |
369 | (initialize_builtins): Likewise, define acos, asin, ceil and floor. | |
370 | ||
a95cd5a0 RS |
371 | 2004-04-22 Roger Sayle <roger@eyesopen.com> |
372 | ||
373 | * resource.c (write_resource_constructor): Guard call to possibly | |
374 | NULL targetm.asm_out.constructor with targetm.have_ctors_dtors. | |
375 | ||
f5310108 BM |
376 | 2004-04-19 Bryce McKinlay <mckinlay@redhat.com> |
377 | ||
378 | * class.c (make_class_data): Add new field aux_info. | |
379 | * decl.c (java_init_decl_processing): Push type and decl for | |
380 | `aux_info'. | |
381 | ||
245c3c04 BM |
382 | 2004-04-15 Bryce McKinlay <mckinlay@redhat.com> |
383 | ||
384 | * expr.c (expand_java_NEW): Don't use size argument for | |
385 | _Jv_AllocObject calls. | |
386 | * parse.y (patch_invoke): Likewise. | |
387 | ||
aeb95628 BM |
388 | 2004-04-12 Bryce McKinlay <mckinlay@redhat.com> |
389 | ||
390 | * expr.c (build_invokeinterface): Remove unused variables to | |
391 | fix warnings. | |
392 | ||
d7afe286 BM |
393 | 2004-04-12 Bryce McKinlay <mckinlay@redhat.com> |
394 | ||
395 | * class.c (get_interface_method_index): New function. Return dispatch | |
396 | index for interface method. | |
397 | (make_method_value): For interface methods, set index field to | |
398 | iface dispatch index, not DECL_VINDEX. | |
399 | * expr.c (build_invokeinterface): Use get_interface_method_index. | |
400 | ||
8df83eae RK |
401 | 2004-03-31 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
402 | ||
403 | * jcf-write.c (generate_bytecode_insns): Use TYPE_UNSIGNED. | |
404 | ||
31023ac5 AH |
405 | 2004-03-31 Andrew Haley <aph@redhat.com> |
406 | ||
407 | PR java/14104 | |
408 | * jcf-io.c (opendir_in_zip): Tidy up error handling. | |
409 | ||
1431042e ZW |
410 | 2004-03-30 Zack Weinberg <zack@codesourcery.com> |
411 | ||
412 | * builtins.c, expr.c, jcf.h, parse.h: Use new shorter | |
413 | form of GTY markers. | |
414 | ||
f6e9619a MM |
415 | 2004-03-25 Marcus Meissner <meissner@suse.de> |
416 | ||
417 | PR java/14689: | |
418 | * jcf-path.c (jcf_path_extdirs_arg): Add missing closedir. | |
419 | ||
986dc4e5 TT |
420 | 2004-03-23 Tom Tromey <tromey@redhat.com> |
421 | ||
422 | PR java/14315: | |
423 | * jcf-write.c (make_class_file_name): Don't report if mkdir | |
424 | failed with EEXIST. | |
425 | ||
37214c41 TT |
426 | 2004-03-23 Tom Tromey <tromey@redhat.com> |
427 | ||
428 | * gcj.texi (Extensions): Document GCJ_PROPERTIES. | |
429 | ||
c048d56d KH |
430 | 2004-03-20 Kazu Hirata <kazu@cs.umass.edu> |
431 | ||
432 | * class.c, gjavah.c, lang.c: Fix comment typos. | |
433 | * gcj.texi: Fix typos. | |
434 | ||
24d82bce PB |
435 | 2004-03-19 Per Bothner <per@bothner.com> |
436 | ||
678fccd5 PB |
437 | * gcj.texi (Code Generation): Document new flags and assert defaults. |
438 | ||
24d82bce PB |
439 | * class.c (assume_compiled_node_struct): Rename type to |
440 | class_flag_node_struct, as it is now also used for enable_assertions. | |
441 | Rename assume_compiled_node typedef. Rename excludep field to value. | |
442 | (find_assume_compiled_node): Rename function to find_class_flag_node. | |
443 | Minor optimization - avoid needless strlen. | |
444 | (add_assume_compiled): Some tweaking and optimization. | |
445 | Rename and generalize to add_class_flag takem an extra parameter. | |
446 | (add_assume_compled): New just calls add_class_flag. | |
447 | (add_enable_assert, enable_assertions): New functions. | |
448 | (enable_assert_tree): New static. | |
449 | * java-tree.h (add_enable_assert, enable_assertions): New declarations. | |
450 | * lang.opt (fenable-assertions, fenable-assertions=, | |
451 | fdisable-assertions, fdisable-assertions=): New options. | |
452 | * lang.c (java_handle_option): Handle new options. | |
453 | * parse.y (build_incomplete_class_ref): Handle class$ in an inner | |
454 | class in an interface - create helper class nested in outer interface. | |
1431042e | 455 | (build_assertion): Short-circuit if enable_assertions is false. |
24d82bce | 456 | |
eb34af89 RK |
457 | 2004-03-18 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
458 | ||
459 | * java-tree.h: Changes throughout to add checking to macros | |
460 | and numerous whitespace changes. | |
461 | (VAR_OR_FIELD_CHECK): New macro. | |
462 | * jcf-write.c (get_access_flags): Use FIELD_PUBLIC, METHOD_PUBLIC, | |
463 | FIELD_FINAL, and METHOD_FINAL instead of CLASS_PUBLIC and CLASS_FINAL. | |
464 | ||
e4b27b12 PB |
465 | 2004-03-16 Per Bothner <per@bothner.com> |
466 | ||
c4cef86b PB |
467 | * jcf-jump.c (options): New --print-constants option. |
468 | * gcj.texi (Invoking jcf-dump): Document --print-constants. | |
469 | ||
e4b27b12 PB |
470 | * jcf-dump.c (flag_print_constant_pool): Default to off. |
471 | (print_constant_terse_with_index): New helper function. | |
472 | (various places): Check flag_print_constant_pool where missing. | |
473 | (main): If verbose set flag_print_constant_pool. | |
474 | (HANDLE_INNERCLASSES_ATTRIBUTE): Null inner class name is anonymous. | |
475 | ||
bfb7b172 AH |
476 | 2004-03-15 Andrew Haley <aph@redhat.com> |
477 | ||
478 | PR java/14581 | |
479 | * parse.y (java_complete_lhs): Check that final variable has an | |
480 | initializer. | |
481 | ||
0bb1600a AH |
482 | 2004-03-12 Andrew Haley <aph@redhat.com> |
483 | ||
484 | PR java/14551 | |
485 | * typeck.c (convert): Clear TREE_OVERFLOW after an integer | |
486 | conversion. | |
487 | ||
083474cc RS |
488 | 2004-02-29 Roger Sayle <roger@eyesopen.com> |
489 | ||
490 | * jcf-parse.c (java_parse_file): Handle the case that input_filename | |
491 | is NULL. | |
492 | ||
202167e7 PB |
493 | 2004-02-27 Per Bothner <per@bothner.com> |
494 | ||
495 | * parse.y (build_assertion): Re-do 02-25 change following Jeff Sturm | |
496 | suggestion: Use build_incomplete_class_ref. | |
6bd5c787 | 497 | This fixes PR java/13508, java/11714. |
202167e7 | 498 | |
88462c42 KH |
499 | 2004-02-27 Kazu Hirata <kazu@cs.umass.edu> |
500 | ||
501 | * java/parse.h: Update copyright. | |
502 | ||
bddefd4f AH |
503 | 2004-02-26 Andrew Haley <aph@redhat.com> |
504 | ||
505 | PR java/14231: | |
506 | * parse.y (check_interface_throws_clauses): Check for | |
507 | !METHOD_INVISIBLE (iface_method). | |
508 | * class.c (layout_class_methods): Check for CLASS_INTERFACE as | |
509 | well as CLASS_ABSTRACT. | |
1431042e | 510 | |
9980cc4b PB |
511 | 2004-02-25 Per Bothner <per@bothner.com> |
512 | ||
513 | * parse.y (build_assertion): If we're in an inner class, create the | |
514 | class$ helper routine in the outer class. | |
515 | ||
4221057e RH |
516 | 2004-02-19 Richard Henderson <rth@redhat.com> |
517 | ||
518 | * parse.y (switch_label): Use make_node for DEFAULT_EXPR. | |
519 | ||
fd1146d4 GK |
520 | 2004-02-16 Geoffrey Keating <geoffk@apple.com> |
521 | ||
522 | * Make-lang.in (java.install-man): Add extra dependencies. | |
523 | ||
c7dad005 GK |
524 | 2004-02-13 Geoffrey Keating <geoffk@apple.com> |
525 | ||
526 | * Make-lang.in: Install man pages under the same names | |
527 | (possibly transformed) as the program they document. | |
528 | ||
0237b2dc JM |
529 | 2004-02-10 Joseph S. Myers <jsm@polyomino.org.uk> |
530 | ||
531 | * gjavah.c: Include "intl.h". | |
532 | (error): New function. | |
533 | (main): Call gcc_init_libintl. | |
534 | (get_field_name, throwable_p, print_c_decl, print_full_cxx_name, | |
535 | print_stub_or_jni, process_file, main): Use error rather than | |
536 | fprintf. | |
537 | (print_method_info, usage, help, version, main): Mark strings for | |
538 | translation with _. Avoid splitting up sentences. Send | |
539 | information messages to stdout. | |
540 | * jcf-dump.c: Include "intl.h". | |
541 | (main): Call gcc_init_libintl. | |
542 | (process_class, usage, help, version, main, CHECK_PC_IN_RANGE): | |
543 | Mark error, usage and version messages for translation with _. | |
544 | Avoid splitting up sentences. | |
545 | * jv-scan.c: Include "intl.h". | |
546 | (fatal_error, warning): Change parameter s to msgid. Translate | |
547 | messages. | |
548 | (main): Call gcc_init_libintl. | |
549 | (usage, help, version): Mark error, usage and version messages for | |
550 | translation with _. Avoid splitting up sentences. | |
551 | * jvgenmain.c: Include "intl.h". | |
552 | (main): Call gcc_init_libintl. | |
553 | (usage, main): Mark error messages for translation with _. | |
554 | * Make-lang.in (GCJH_OBJS, JVSCAN_OBJS, JCFDUMP_OBJS, | |
555 | JVGENMAIN_OBJS): Add intl.o. | |
556 | (java/jcf-dump.o, java/gjavah.o, java/jv-scan.o, | |
557 | java/jvgenmain.o): Update dependencies. | |
558 | ||
e333a618 PB |
559 | 2004-02-08 Per Bothner <per@bothner.com> |
560 | ||
561 | * parse.y (resolve_qualified_expression_name): In case of inaccessible | |
562 | class don't use not_accessible_field_error, which can get confused. | |
563 | ||
02ba6b22 KC |
564 | 2004-02-05 Kelley Cook <kcook@gcc.gnu.org> |
565 | ||
566 | Make-lang.in (po-generated): Delete. | |
567 | ||
136e64db KH |
568 | 2004-02-05 Kazu Hirata <kazu@cs.umass.edu> |
569 | ||
570 | * Make-lang.in (java/decl.o, java/expr.o, java/parse.o): | |
571 | Depend on target.h. | |
572 | * decl.c: Include target.h. | |
573 | (start_java_method): Replace PROMOTE_PROTOTYPES with | |
574 | targetm.calls.promote_prototypes. | |
575 | * expr.c: Include target.h. | |
576 | (pop_arguments): Replace PROMOTE_PROTOTYPES with | |
577 | targetm.calls.promote_prototypes. | |
578 | * parse.y: Include target.h. | |
579 | (start_complete_expand_method): Replace PROMOTE_PROTOTYPES | |
580 | with targetm.calls.promote_prototypes. | |
581 | ||
e146f815 KH |
582 | 2004-02-04 Kazu Hirata <kazu@cs.umass.edu> |
583 | ||
584 | * typeck.c: Update copyright. | |
585 | ||
4e0e4a49 TT |
586 | 2004-02-02 Tom Tromey <tromey@redhat.com> |
587 | ||
588 | * decl.c (java_init_decl_processing): Remove duplicate | |
589 | gnu/gcj/RawData. | |
590 | ||
71cbe2c1 KC |
591 | 2004-01-30 Kelley Cook <kcook@gcc.gnu.org> |
592 | ||
1431042e | 593 | * Make-lang.in (doc/gcj.dvi): Use $(abs_docdir). |
71cbe2c1 | 594 | |
ae8f0c17 AP |
595 | 2004-01-28 Andrew Pinski <pinskia@physics.uc.edu> |
596 | ||
597 | * expr.c (build_field_ref): Move variable | |
598 | definition up. | |
599 | ||
6d23f07f AH |
600 | 2004-01-28 Andrew Haley <aph@redhat.com> |
601 | ||
602 | * expr.c (build_field_ref): Widen field offset. | |
603 | ||
ea095e9a AH |
604 | 2004-01-27 Andrew Haley <aph@redhat.com> |
605 | ||
606 | java/13273 | |
607 | * parse.y (check_interface_throws_clauses): Make sure class_decl | |
608 | has been loaded. | |
609 | ||
5238574f JS |
610 | 2004-01-22 Jeff Sturm <jsturm@one-point.com> |
611 | ||
612 | PR java/13733 | |
613 | * parse.y (patch_assignment): Don't modify lhs_type for | |
614 | reference assignments. | |
615 | ||
a541f69d KC |
616 | 2004-01-20 Kelley Cook <kcook@gcc.gnu.org> |
617 | ||
618 | * Make-lang.in: Replace $(docdir) with doc. | |
619 | (java.info, java.srcinfo, java.man, java.srcman): New rules. | |
620 | (java.install-man): Revamp rule. | |
1431042e | 621 | |
e165d61b KC |
622 | 2004-01-20 Kelley Cook <kcook@gcc.gnu.org> |
623 | ||
1431042e ZW |
624 | * Make-lang.in (JAVA_INSTALL_NAME, JAVA_TARGET_INSTALL_NAME, |
625 | GCJH_TARGET_INSTALL_NAME): Define via a immediate $(shell) | |
e165d61b KC |
626 | instead of deferred backquote. |
627 | ||
cf5da2b9 AP |
628 | 2004-01-16 Andrew Pinski <pinskia@physics.uc.edu> |
629 | ||
630 | * typeck.c (find_method_in_interfaces): Move variable | |
631 | definition up. | |
632 | ||
e081a9c4 AH |
633 | 2004-01-16 Andrew Haley <aph@redhat.com> |
634 | ||
635 | PR java/13273: | |
636 | * typeck.c (shallow_find_method): New. | |
637 | (find_method_in_superclasses): New. | |
638 | (find_method_in_interfaces): New. | |
639 | (lookup_do): Rewrite. | |
640 | * java-tree.h (SEARCH_ONLY_INTERFACE): Delete. | |
641 | ||
642 | * jcf-parse.c (read_class): Save and restore output_class. | |
643 | * decl.c (java_expand_body): Set output_class from fndecl. | |
644 | ||
71e68384 MC |
645 | 2004-01-15 Michael Chastain <mec.gnu@mindspring.com> |
646 | ||
647 | * class.c (gen_indirect_dispatch_tables): Fix string length | |
648 | calculations. | |
649 | ||
03787dfd KC |
650 | 2004-01-15 Kelley Cook <kcook@gcc.gnu.org> |
651 | ||
652 | * Make-lang.in (parse.c, parse-scan.c): Always build in doc directory. | |
653 | (java.srcextra): Copy above back to source directory if requested. | |
654 | (po-generated): Delete reference to $(parsedir). | |
655 | (java/parse.o, java/parse-scan.o): Delete reference to $(parsedir). | |
656 | Use implicit rule. | |
657 | ||
4b589eab JH |
658 | 2004-01-14 Jan Hubicka <jh@suse.cz> |
659 | ||
660 | * lang.c (java_estimate_num_insns_1): Fix bug in MODIFY_EXPR cost | |
661 | estimation. | |
662 | ||
0fab64a3 MM |
663 | 2004-01-09 Mark Mitchell <mark@codesourcery.com> |
664 | ||
665 | * java-tree.h (java_expand_expr): Change prototype. | |
666 | * expr.c (java_expand_expr): Add alt_rtl parameter. | |
667 | ||
85194ee9 AH |
668 | 2004-01-09 Andrew Haley <aph@redhat.com> |
669 | ||
670 | PR java/12755: | |
671 | * parse.y (java_fix_constructors): Set output_class. | |
672 | (java_reorder_fields): Likewise. | |
673 | (java_layout_classes): Likewise. | |
674 | (java_expand_classes): Generate indirect dispatch tables. | |
675 | (java_expand_classes): Set output_class. | |
676 | (java_finish_classes): Likewise. | |
677 | * lang.c (java_init): Turn on always_initialize_class_p if we're | |
678 | using indirect dis[atch. | |
679 | (java_decl_ok_for_sibcall): Use output_class, not current_class. | |
680 | (java_get_callee_fndecl): Use class local atable. | |
1431042e | 681 | * jcf-parse.c |
85194ee9 AH |
682 | (always_initialize_class_p): Decl moved to java-tree.h. |
683 | (HANDLE_CLASS_INFO): Set output_class. | |
684 | (read_class): Likewise. | |
685 | (parse_class_file): Call gen_indirect_dispatch_tables. | |
686 | (parse_zip_file_entries): Set output_class. | |
687 | (java_parse_file): Set output_class. Don't emit symbol tables. | |
688 | * java-tree.h (output_class): New. | |
689 | Remove global declarations for otable, atable, and ctable. | |
690 | (always_initialize_class_p): moved here from decl.c. | |
691 | (DECL_OWNER): New. | |
692 | (TYPE_ATABLE_METHODS, TYPE_ATABLE_SYMS_DECL, TYPE_ATABLE_DECL, | |
693 | TYPE_OTABLE_METHODS, TYPE_OTABLE_SYMS_DECL, TYPE_OTABLE_DECL, | |
694 | TYPE_CTABLE_DECL, TYPE_CATCH_CLASSES): New. | |
695 | (struct lang_type): Add otable_methods, otable_decl, | |
696 | otable_syms_decl, atable_methods, atable_decl, atable_syms_decl, | |
697 | ctable_decl, catch_classes, type_to_runtime_map. | |
698 | * expr.c (build_field_ref): Make otable, atable, and ctable class | |
699 | local rather than global. | |
700 | (build_known_method_ref): Likewise. | |
701 | (build_invokeinterface): Likewise. | |
702 | (java_expand_expr): Pass runtime type (rather than actual type) to | |
703 | expand_start_catch. | |
704 | * except.c (prepare_eh_table_type): Create TYPE_TO_RUNTIME_MAP for | |
705 | this class. Look up each class in that map to delete duplicates. | |
706 | (expand_end_java_handler): Pass runtime type (rather than actual | |
707 | type) to expand_start_catch. | |
708 | * decl.c: (always_initialize_class_p): Decl moved to java-tree.h. | |
709 | (do_nothing): New. | |
710 | (java_init_decl_processing): Rearrange things. Remove global | |
711 | declarations of otable, atable, and ctable. | |
712 | (java_init_decl_processing): Make lang_eh_runtime_type do_nothing. | |
713 | (java_expand_body): Set output_class. | |
714 | * constants.c (build_constant_data_ref): Use output_class, not | |
715 | current_class. | |
716 | (alloc_name_constant): Likewise. | |
717 | * class.c (gen_indirect_dispatch_tables): New. | |
718 | (build_class_ref): Generate hard reference to superclass, even if | |
719 | using indirect dispatch. | |
720 | (build_static_field_ref): Use class local atable. | |
721 | (make_class_data): Generate hard reference to superclass, even if | |
722 | using indirect dispatch. | |
723 | Generate symbolic references to interfaces when using indirect | |
724 | dispatch. | |
725 | (make_class_data): Emit otable, atable, and ctable. | |
726 | Make otable, atable, and ctable class local rather than global. | |
727 | (emit_catch_table): Make otable, atable, and ctable class local | |
728 | rather than global. | |
1431042e | 729 | |
df9fe6e5 AP |
730 | 2003-12-25 Andrew Pinski <pinskia@physics.uc.edu> |
731 | ||
19a4e5b7 AP |
732 | * parse.y (catch_clause_parameter): Fix typo. |
733 | ||
df9fe6e5 | 734 | PR java/13404 |
1431042e | 735 | * parse.y: (catch_clause_parameter): Return early if $3, aka |
df9fe6e5 AP |
736 | formal_parameter, is null. |
737 | ||
3a976c72 KH |
738 | 2003-12-20 Kazu Hirata <kazu@cs.umass.edu> |
739 | ||
740 | * class.c: Remove uses of "register" specifier in | |
741 | declarations of arguments and local variables. | |
742 | * decl.c: Likewise. | |
743 | * expr.c: Likewise. | |
744 | * gjavah.c: Likewise. | |
745 | * jcf-dump.c: Likewise. | |
746 | * jcf-io.c: Likewise. | |
747 | * jcf-parse.c: Likewise. | |
748 | * jcf-write.c: Likewise. | |
749 | * keyword.h: Likewise. | |
750 | * parse.y: Likewise. | |
751 | * typeck.c: Likewise. | |
752 | * verify.c: Likewise. | |
753 | ||
439020ec KC |
754 | 2003-12-06 Kelley Cook <kcook@gcc.gnu.org> |
755 | ||
756 | * Make-lang.in (GCJ_CROSS_NAME): Delete. | |
757 | (java.install_common, java.install-man): Adjust for above. | |
758 | (java.uninstall): Likewise. | |
759 | ||
02972627 MK |
760 | 2003-12-03 Michael Koch <konqueror@gmx.de> |
761 | ||
762 | * class.c (make_class_data): | |
763 | Push field value to 'hack_signers' instead of 'signers'. | |
764 | * decl.c (java_init_decl_processing): | |
765 | Push field 'hack_signers' instead of 'signers'. | |
766 | ||
eb158727 ZW |
767 | 2003-12-03 Zack Weinberg <zack@codesourcery.com> |
768 | ||
769 | * lex.h: Check both HAVE_ICONV and HAVE_ICONV_H before | |
770 | including iconv.h. | |
771 | ||
c6a25d3a RL |
772 | 2003-12-03 Ralph Loader <rcl@ihug.co.nz> |
773 | ||
774 | PR java/12374: | |
775 | * parse.y (qualify_ambiguous_name): Remove lots of broken | |
776 | field access processing - there's no need to do that here, | |
777 | because we have resolve_field_access. Remove | |
778 | RESOLVE_EXPRESSION_NAME_P as it isn't used anywhere else. | |
779 | * java-tree.h: Remove RESOLVE_EXPRESSION_NAME_P as it isn't | |
780 | used. | |
eb158727 | 781 | |
50abb28b JS |
782 | 2003-12-01 Jeff Sturm <jsturm@one-point.com> |
783 | ||
784 | Fix PR java/13237 | |
785 | * parse.y (java_complete_lhs): Save location prior to patching | |
786 | CALL_EXPR. | |
787 | ||
8bc7a740 ME |
788 | 2003-11-25 Mohan Embar <gnustuff@thisiscool.com> |
789 | ||
50abb28b JS |
790 | PR java/12548 |
791 | * resource.c (write_resource_constructor): Append | |
792 | "_resource" to constructor identifier name. | |
8bc7a740 | 793 | |
75182467 JS |
794 | 2003-11-25 Jeff Sturm <jsturm@one-point.com> |
795 | ||
796 | Fix PR java/13183. | |
797 | * constants.c (cpool_for_class): New function. | |
798 | (outgoing_cpool): Remove global variable. | |
799 | (alloc_name_constant): Use cpool_for_class. | |
800 | (build_constants_constructor): Likewise. | |
801 | * decl.c (java_expand_body): Set current_class. | |
802 | * java-tree.h (outgoing_cpool) Remove declaration. | |
803 | (init_outgoing_cpool): Likewise. | |
804 | * jcf-parse.c (init_outgoing_cpool): Remove function. | |
805 | (parse_class_file): Don't call init_outgoing_cpool. | |
806 | * parse.y (java_complete_expand_methods): Don't call | |
807 | init_outgoing_cpool. Don't save outgoing_cpool. | |
808 | (java_expand_classes): Don't restore outgoing_cpool. | |
809 | (java_finish_classes): Likewise. | |
810 | ||
33fe4596 ME |
811 | 2003-11-24 Mohan Embar <gnustuff@thisiscool.com> |
812 | ||
813 | * Make-lang.in: (java.install-common) Add | |
814 | symlink for $(target_noncanonical)-gcjh for | |
815 | native builds. | |
816 | ||
a03ad584 JM |
817 | 2003-11-20 Joseph S. Myers <jsm@polyomino.org.uk> |
818 | ||
819 | * Make-lang.in (java.extraclean): Delete. | |
820 | ||
49a41726 JM |
821 | 2003-11-20 Joseph S. Myers <jsm@polyomino.org.uk> |
822 | ||
823 | * Make-lang.in (check-java): Add. | |
824 | ||
c2a141a0 JS |
825 | 2003-11-19 Jeff Sturm <jsturm@one-point.com> |
826 | ||
827 | Fix PR java/13024. | |
828 | * except.c (prepare_eh_table_type): Allocate variable-sized | |
829 | buffer `buf' with alloca. | |
830 | ||
b8ca854a JS |
831 | 2003-11-17 Jeff Sturm <jsturm@one-point.com> |
832 | ||
833 | Fix PR java/12857. | |
834 | ||
835 | decl.c (java_init_decl_processing): Don't initialize | |
836 | class_not_found_type_node, no_class_def_found_type_node. | |
837 | ||
838 | java-tree.h (JTI_CLASS_NOT_FOUND_TYPE_NODE, | |
839 | JTI_NO_CLASS_DEF_FOUND_TYPE_NODE): Remove from java_tree_index. | |
840 | (class_not_found_type_node, no_class_def_found_type_node): | |
841 | Don't define. | |
842 | ||
843 | parse.y (build_dot_class_method_invocation): Add this_class | |
844 | argument. Qualify method invocations to a different class. | |
845 | (create_new_parser_context): Initialize saved_data_ctx to 0. | |
846 | (java_parser_context_save_global): Initialize saved_data_ctx to 1. | |
847 | (build_dot_class_method): Don't load classes. Register | |
848 | incomplete types. | |
849 | (build_incomplete_class_ref): Special cases for interfaces | |
850 | and inner classes. Move build_dot_class_method call to here... | |
851 | (patch_incomplete_class_ref): ...from here. Pass current_class | |
852 | to build_dot_class_method_invocation. | |
853 | (build_assertion): Pass class_type to | |
854 | build_dot_class_method_invocation. | |
855 | (encapsulate_with_try_catch): Handle EXPR_WITH_FILE_LOCATION node. | |
856 | ||
a78e4fa7 JS |
857 | 2003-11-17 Jeff Sturm <jsturm@one-point.com> |
858 | ||
859 | Fix PR java/12739. | |
860 | * java-tree.h (BLOCK_EMPTY_P): Define. | |
861 | * parse.y (java_complete_lhs): Check for empty blocks | |
862 | in TRY_FINALLY_EXPR case. | |
863 | ||
864 | 2003-11-17 Andrew Haley <aph@redhat.com> | |
6bbb4ad3 AH |
865 | |
866 | * java-tree.h (LOCAL_VAR_OUT_OF_SCOPE_P): New. | |
eb158727 | 867 | (struct lang_decl_var:freed): New variable. |
6bbb4ad3 AH |
868 | * decl.c (poplevel): Mark local vars that have gone out of scope. |
869 | (push_jvm_slot): Don't use the RTL of a var that has gone out of | |
870 | scope. | |
871 | ||
7d60db05 JM |
872 | 2003-11-16 Jason Merrill <jason@redhat.com> |
873 | ||
874 | * Make-lang.in (java.tags): Create TAGS.sub files in each directory | |
875 | and TAGS files that include them for each front end. | |
876 | ||
45c00e22 TT |
877 | 2003-11-15 Tom Tromey <tromey@redhat.com> |
878 | ||
879 | * gjavah.c (print_stub_or_jni): Pass `env' to FatalError. | |
880 | ||
1b2b8ee7 JM |
881 | 2003-11-12 Jason Merrill <jason@redhat.com> |
882 | ||
883 | PR optimization/12547 | |
884 | * lang.c (java_tree_inlining_walk_subtrees): Just walk | |
885 | BLOCK_EXPR_BODY directly. | |
886 | ||
7304c6cf AH |
887 | 2003-11-12 Andrew Haley <aph@redhat.com> |
888 | ||
0adaa7e4 AH |
889 | PR java/11045 |
890 | * parse.y (fold_constant_for_init): Check that we really do have a | |
891 | constant. | |
892 | ||
7304c6cf AH |
893 | PR java/11533 |
894 | * lang.c (merge_init_test_initialization): Clear DECL_INITIAL for | |
895 | init_test_decls being inlined. | |
896 | ||
897 | PR java/12890: | |
898 | * parse.y (do_resolve_class): Check return value from | |
899 | breakdown_qualified(). | |
900 | ||
5b84be73 TT |
901 | 2003-11-11 Tom Tromey <tromey@redhat.com> |
902 | ||
903 | PR java/12915: | |
904 | * parse.y (merge_string_cste): Handle case where we have a | |
905 | pointer that happens to be zero, not null_pointer_node. | |
906 | ||
87a9cbf9 TT |
907 | 2003-11-10 Tom Tromey <tromey@redhat.com> |
908 | ||
909 | * jcf-parse.c (classify_zip_file): Correctly compare | |
910 | filename_length against length of manifest file's name. | |
911 | ||
b9bc3665 TT |
912 | 2003-11-08 Tom Tromey <tromey@redhat.com> |
913 | ||
914 | PR java/12894: | |
915 | * jcf-parse.c (classify_zip_file): Only skip MANIFEST.MF file. | |
916 | ||
4b886873 AH |
917 | 2003-11-06 Andrew Haley <aph@redhat.com> |
918 | ||
919 | * expr.c (java_stack_swap): Make sure destination stack slots are | |
920 | of the correct type. | |
921 | ||
63069342 KC |
922 | 2003-11-03 Kelley Cook <kcook@gcc.gnu.org> |
923 | ||
924 | * Make-lang.in (dvi): Move targets to $(docobjdir). | |
925 | (gcj.dvi): Simplify rule and adjust target. | |
926 | (gcj.info): Simplify rule. | |
927 | (gcj.pod): New intermediate rule. | |
928 | (gcjh.pod): Likewise. | |
929 | (jv-scan.pod): Likewise. | |
930 | (jcf-dump.pod): Likewise. | |
931 | (gij.pod): Likewise. | |
932 | (jv-convert.pod): Likewise. | |
933 | (rmic.pod): Likewise. | |
934 | (rmiregistry.pod): Likewise. | |
935 | (gcj.1): Delete. | |
936 | (gcjh.1): Delete. | |
937 | (jv-scan.1): Delete. | |
938 | (jcf-dump.1): Delete. | |
939 | (gij.1): Delete. | |
940 | (jv-convert.1): Delete. | |
941 | (rmic.1): Delete. | |
942 | (rmiregistry.1): Delete. | |
943 | ||
9bcdf735 JS |
944 | 2003-11-02 Jeff Sturm <jsturm@one-point.com> |
945 | ||
946 | Fixes PR java/12866. | |
947 | * parse.y (resolve_qualified_expression_name): Move test | |
948 | for outer field access methods from here... | |
949 | (check_thrown_exceptions) ...to here. | |
950 | ||
d6665c33 KC |
951 | 2003-11-01 Kelley Cook <kcook@gcc.gnu.org> |
952 | ||
953 | * .cvsignore: Delete. | |
954 | ||
ab212c24 FCE |
955 | 2003-10-28 Frank Ch. Eigler <fche@redhat.com> |
956 | ||
957 | * verify.c (verify_jvm_instructions): Don't warn about legal | |
958 | eh binding regions generated for example by jdk 1.4.1. | |
959 | ||
7b8af2b5 DM |
960 | 2003-10-24 David S. Miller <davem@redhat.com> |
961 | ||
962 | * jcf-parse.c (jcf_parse): Fix args to fatal_error(). | |
963 | ||
90471585 AH |
964 | 2003-10-22 Andrew Haley <aph@redhat.com> |
965 | ||
966 | * lang.c (LANG_HOOKS_GET_CALLEE_FNDECL): New. | |
967 | (java_get_callee_fndecl): New. | |
968 | ||
969 | * jcf-parse.c (java_parse_file): Call emit_catch_table(). | |
970 | ||
971 | * java-tree.h (ctable_decl): New. | |
972 | (catch_classes): New. | |
973 | (java_tree_index): Add JTI_CTABLE_DECL, JTI_CATCH_CLASSES. | |
974 | ||
975 | * decl.c (java_init_decl_processing): Add catch_class_type. | |
976 | Add ctable_decl. | |
977 | Add catch_classes field. | |
978 | ||
979 | * class.c (build_indirect_class_ref): Break out from | |
980 | build_class_ref. | |
981 | (make_field_value): Check flag_indirect_dispatch. | |
982 | (make_class_data): Ditto. | |
983 | Tidy uses of PUSH_FIELD_VALUE. | |
984 | Add field catch_classes. | |
985 | (make_catch_class_record): New. | |
986 | ||
987 | * java-tree.h (PUSH_FIELD_VALUE): Tidy. | |
988 | ||
ed2f11fa KH |
989 | 2003-10-22 Kazu Hirata <kazu@cs.umass.edu> |
990 | ||
991 | * jcf-write.c: Follow spelling conventions. | |
992 | * parse.y: Likewise. | |
993 | ||
67264b4f KH |
994 | 2003-10-22 Kazu Hirata <kazu@cs.umass.edu> |
995 | ||
996 | * ChangeLog: Fix typos. | |
997 | * expr.c: Fix comment typos. | |
998 | * jcf-write.c: Likewise. | |
999 | * lang.c: Likewise. | |
1000 | * lex.c: Likewise. | |
1001 | * mangle.c: Likewise. | |
1002 | * parse-scan.y: Likewise. | |
1003 | * parse.y: Likewise. | |
1004 | ||
36ae3d8e TT |
1005 | 2003-10-22 Tom Tromey <tromey@redhat.com> |
1006 | ||
1007 | * expr.c (expand_byte_code): Only warn about dead bytecode when | |
1008 | extra_warnings is set. | |
1009 | ||
ed2506a4 BM |
1010 | 2003-10-22 Bryce McKinlay <bryce@mckinlay.net.nz> |
1011 | ||
1012 | Fix for PR java/12586. | |
1013 | * mangle.c (find_compression_record_match): Don't iterate through | |
1014 | package namespace elements unless they all match compression_table | |
1015 | entries. | |
1016 | ||
036a75ac KC |
1017 | 2003-10-20 Kelley Cook <kcook@gcc.gnu.org> |
1018 | ||
1019 | * Make-lang.in (info): Honor $(parsedir) and $(docobjdir). | |
1020 | (generate-manpages): Likewise. | |
1021 | (java.maintainer-clean): Likewise. | |
1022 | (gcj.info): Likewise. | |
1023 | (gcj.1): Likewise. | |
1024 | (gcjh.1): Likewise. | |
1025 | (jv-scan.1): Likewise. | |
1026 | (jcf-dump.1): Likewise. | |
1027 | (gij.1): Likewise. | |
1028 | (jv-convert.1): Likewise. | |
1029 | (rmic.1): Likewise. | |
1030 | (rmiregistry.1): Likewise. | |
1031 | (java.install-man): Likewise. | |
1032 | (parse-scan.o): Move and define complete compile line. | |
1033 | (parse.o): Likewise. | |
1034 | (jcf-tree-inline.o): Move. | |
1035 | ||
97ae108d MM |
1036 | 2003-10-20 Mark Mitchell <mark@codesourcery.com> |
1037 | ||
1038 | * Make-lang.in (info): Update dependencies. | |
1039 | (java.install-info): Remove. | |
1040 | ($(srcdir)/java/gcj.info): Replace with ... | |
1041 | ($(docobjdir)/gcj.info): ... this. | |
1042 | ||
43aba518 NN |
1043 | 2003-10-14 Nathanael Nerode <neroden@gcc.gnu.org> |
1044 | ||
1045 | * Make-lang.in: Replace uses of $(target_alias) with | |
1046 | $(target_noncanonical). | |
1047 | ||
ae125b17 TT |
1048 | 2003-10-09 Tom Tromey <tromey@redhat.com> |
1049 | ||
1050 | * decl.c (java_init_decl_processing): Declare signers field. | |
1051 | * class.c (make_class_data): Set signers field. | |
1052 | ||
1456deaf JM |
1053 | 2003-10-09 Jason Merrill <jason@redhat.com> |
1054 | ||
1055 | * parse.y (patch_assignment): Use make_node to create a BLOCK. | |
1056 | * parse.h (BUILD_PTR_FROM_NAME): Use make_node to create a | |
1057 | POINTER_TYPE. | |
1058 | ||
62b81e45 MM |
1059 | 2003-10-06 Mark Mitchell <mark@codesourcery.com> |
1060 | ||
1061 | * Make-lang.in (java.info): Replace with ... | |
1062 | (info): ... this. | |
1063 | (java.dvi): Replace with ... | |
1064 | (dvi): ... this. | |
1065 | (java.generated-manpages): Replace with ... | |
1066 | ||
35222de2 KC |
1067 | 2003-10-03 Kelley Cook <kelleycook@wideopenwest.com> |
1068 | ||
1069 | * builtins.c, jcf.h, jvspec.c: Remove PARAMS macros. | |
1070 | ||
9dfc2ec2 AH |
1071 | 2003-10-01 Andrew Haley <aph@redhat.com> |
1072 | ||
1073 | * jcf-parse.c (java_parse_file): Write otable and atable. | |
1074 | * java-tree.h (atable_methods): New. | |
1075 | (atable_decl): New. | |
1076 | (atable_syms_decl): New. | |
1077 | (enum java_tree_index): Add JTI_ATABLE_METHODS, JTI_ATABLE_DECL, | |
1078 | JTI_ATABLE_SYMS_DECL. Rename JTI_METHOD_SYMBOL* to JTI_SYMBOL*. | |
eb158727 | 1079 | (symbol_*type): Rename method_symbol* to symbol*type. |
9dfc2ec2 AH |
1080 | (emit_offset_symbol_table): Delete. |
1081 | (emit_symbol_table): New. | |
1082 | (get_symbol_table_index): New. | |
1083 | (atable_type): New. | |
1084 | * expr.c (build_field_ref): Handle flag_indirect_dispatch. | |
1085 | (build_known_method_ref): Likewise. | |
1086 | (get_symbol_table_index): Rename from get_offset_table_index. | |
1087 | Parameterize to allow re-use by differing types of symbol table. | |
1088 | (build_invokevirtual): Pass table to get_offset_table_index. | |
1089 | * decl.c (java_init_decl_processing): Push types and decls for | |
1090 | atable and atable_syyms. | |
1091 | * class.c (build_static_field_ref): Handle flag_indirect_dispatch. | |
1092 | (make_class_data): Add new fields atable and atable_syms. | |
1093 | (emit_symbol_table): Rename from emit_offset_symbol_table. | |
1094 | Parameterize to allow re-use by different types of symbol table. | |
1095 | (build_symbol_entry): Renamed from build_method_symbols_entry. | |
eb158727 | 1096 | |
d186e676 RS |
1097 | 2003-09-30 Roger Sayle <roger@eyesopen.com> |
1098 | ||
1099 | * jcf-write.c (generate_bytecode_insns): Implement evaluate-once | |
1100 | semantics for SAVE_EXPR, by caching the result in a temporary. | |
1101 | ||
436fac17 RH |
1102 | 2003-09-28 Richard Henderson <rth@redhat.com> |
1103 | ||
1104 | * check-init.c (check_init): Save and restore input_location | |
1105 | instead of file and line separately. | |
1106 | * decl.c (java_expand_body): Likewise. | |
1107 | * jcf-write.c (generate_bytecode_insns): Likewise. | |
1108 | * parse.y (safe_layout_class): Likewise. | |
1109 | * jcf-parse.c (read_class, parse_class_file): Likewise. | |
1110 | (java_parse_file): Use %H for warning locator. | |
1111 | ||
37e2180d RS |
1112 | 2003-09-28 Roger Sayle <roger@eyesopen.com> |
1113 | ||
1114 | * expr.c (java_check_reference): Use the semantics of COND_EXPRs | |
1115 | with void-type branches instead of using a COMPOUND_EXPR. | |
1116 | ||
9220b1ba JS |
1117 | 2003-09-28 Jeff Sturm <jsturm@one-point.com> |
1118 | ||
1119 | * decl.c (java_optimize_inline, dump_function): Remove. | |
1120 | * java-tree.h (java_optimize_inline): Remove declaration. | |
1121 | * jcf-parse.c (java_parse_file): Assume flag_unit_at_a_time is set. | |
1122 | * parse.y (source_end_java_method, java_expand_classes): | |
1123 | Likewise. Remove dead code. | |
1124 | ||
c67e6e14 RS |
1125 | 2003-09-27 Roger Sayle <roger@eyesopen.com> |
1126 | ||
1127 | * lang.c (java_init_options): Set flag_evaluation_order. | |
1128 | * expr.c (force_evaluation_order): Don't attempt to force | |
1129 | evaluation order of binary operations using save_expr. | |
1130 | * parse.y (java_complete_lhs): No longer need to call | |
1131 | force_evaluation_order when constructing binary operators. | |
1132 | ||
cd11bdcc APB |
1133 | 2003-09-27 Alexandre Petit-Bianco <apbianco@redhat.com> |
1134 | Bryce McKinlay <bryce@mckinlay.net.nz> | |
1135 | ||
1136 | PR java/1333: | |
1137 | * parse.y (not_accessible_field_error): New function. | |
1138 | (resolve_expression_name): Check field access permissions. | |
1139 | (resolve_qualified_expression_name): Use | |
1140 | not_accessible_field_error. | |
1141 | (resolve_qualified_expression_name): Likewise. | |
1142 | ||
eb9ec0d4 RO |
1143 | 2003-09-24 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> |
1144 | ||
1145 | * class.c (build_utf8_ref): Test for HAVE_GAS_SHF_MERGE value. | |
1146 | ||
87750fef RS |
1147 | 2003-09-23 Roger Sayle <roger@eyesopen.com> |
1148 | ||
1149 | * jcf-write.c (generate_bytecode_insns): Optimize binary operations | |
1150 | with equal operands without side-effects. | |
1151 | ||
92f6e625 JS |
1152 | 2003-09-22 Jeff Sturm <jsturm@one-point.com> |
1153 | ||
1154 | * decl.c (java_init_decl_processing): Don't emit otable decls | |
1155 | if flag_indirect_dispatch is not set. | |
1156 | ||
f31686a3 RH |
1157 | 2003-09-21 Richard Henderson <rth@redhat.com> |
1158 | ||
eb158727 | 1159 | * class.c, decl.c, jcf-parse.c, jcf-write.c, parse.y, |
f31686a3 RH |
1160 | resource.c: Revert. |
1161 | ||
7e2af53a RH |
1162 | 2003-09-21 Richard Henderson <rth@redhat.com> |
1163 | ||
eb158727 | 1164 | * class.c, decl.c, jcf-parse.c, jcf-write.c, parse.y, |
7e2af53a RH |
1165 | resource.c: Update for DECL_SOURCE_LOCATION rename and change to const. |
1166 | ||
ddd2d57e RH |
1167 | 2003-09-20 Richard Henderson <rth@redhat.com> |
1168 | ||
eb158727 | 1169 | * check-init.c, class.c, decl.c, expr.c: Use %J in diagnostics. |
ddd2d57e | 1170 | |
96123432 RS |
1171 | 2003-09-18 Roger Sayle <roger@eyesopen.com> |
1172 | ||
1173 | * expr.c (java_truthvalue_conversion): Remove FFS_EXPR case. | |
1174 | * check-init.c (check_init): Likewise. | |
1175 | ||
a490d1be RS |
1176 | 2003-09-18 Roger Sayle <roger@eyesopen.com> |
1177 | ||
1178 | * jcf-write.c (generate_bytecode_insns): Add support for fconst_2. | |
1179 | ||
1319e88e AH |
1180 | 2003-09-16 Andrew Haley <aph@redhat.com> |
1181 | ||
1182 | * jcf-write.c (generate_bytecode_insns): Add MIN_EXPR and MAX_EXPR. | |
1183 | ||
bdc225df RM |
1184 | 2003-09-17 Ranjit Mathew <rmathew@hotmail.com> |
1185 | ||
1186 | Fixes PR java/9577 | |
1187 | * mangle.c (find_compression_record_match): Skip | |
1188 | over a "6JArray" (the array template mangled string) | |
1189 | IDENTIFIER_NODE. | |
1190 | (mangle_array_type): Correct minor typo. | |
1191 | (atms): Move definition to the beginning. | |
1192 | ||
93634679 BM |
1193 | 2003-09-16 Bryce McKinlay <bryce@mckinlay.net.nz> |
1194 | ||
eb158727 | 1195 | * class.c (add_miranda_methods): Ensure super-interfaces are laid |
93634679 BM |
1196 | out. Fix for PR java/12254. |
1197 | ||
6b00c969 RH |
1198 | 2003-09-11 Richard Henderson <rth@redhat.com> |
1199 | ||
eb158727 ZW |
1200 | * parse.y (source_end_java_method): Update for new |
1201 | cgraph_finalize_function argument. | |
6b00c969 | 1202 | |
39adabaf RH |
1203 | 2003-09-09 Richard Henderson <rth@redhat.com> |
1204 | ||
eb158727 ZW |
1205 | * parse.y (source_end_java_method): Update call to |
1206 | cgraph_finalize_function. | |
39adabaf | 1207 | |
916b57ce JS |
1208 | 2003-09-03 Jeff Sturm <jsturm@one-point.com> |
1209 | ||
1210 | * decl.c (java_expand_body): New function. | |
1211 | * expr.c (build_class_init): Set DECL_IGNORED_P. | |
1212 | * java-tree.h (start_complete_expand_method, | |
1213 | java_expand_body): Declare. | |
1214 | * jcf-parse.c (cgraph.h): Include. | |
1215 | (java_parse_file): Handle flag_unit_at_a_time. | |
1216 | * lang.c (LANG_HOOKS_TREE_INLINING_START_INLINING, | |
1217 | LANG_HOOKS_CALLGRAPH_EXPAND_FUNCTION): Define. | |
1218 | (java_estimate_num_insns): Use walk_tree_without_duplicates. | |
1219 | (java_start_inlining): New function. | |
1220 | * parse.h (java_finish_classes): Declare. | |
1221 | * parse.y: Include cgraph.h. | |
1222 | (block): Don't special-case empty block production. | |
1223 | (craft_constructor): Set DECL_INLINE. | |
1224 | (source_end_java_method): Handle flag_unit_at_a_time. | |
1225 | Replace inline code with call to java_expand_body. | |
1226 | (start_complete_expand_method): Remove static modifier. | |
1227 | (java_expand_method_bodies): Patch function tree for | |
1228 | class initialization and/or synchronization as needed. | |
1229 | Don't begin RTL expansion yet. | |
1230 | (java_expand_classes): Check flag_unit_at_a_time before | |
1231 | calling finish_class. | |
1232 | (java_finish_classes): New function. | |
1233 | (java_complete_lhs): Ensure COMPOUND_EXPR has non-NULL type. | |
1234 | (patch_assignment): Set DECL_CONTEXT on temporary variable. | |
1235 | (emit_test_initialization): Set DECL_IGNORED_P. | |
1236 | ||
e71d3aae RS |
1237 | 2003-09-03 Roger Sayle <roger@eyesopen.com> |
1238 | ||
1239 | * builtins.c (enum builtin_type): Delete unused enumeration. | |
1240 | * Make-lang.in (java/builtins.o): Remove built-types.def dependency. | |
1241 | ||
ff2865f2 TT |
1242 | 2003-08-28 Tom Tromey <tromey@redhat.com> |
1243 | ||
1244 | * gcj.texi (Extensions): Document gcjlib URLs. | |
1245 | ||
b7d6f12a TT |
1246 | 2003-08-20 Tom Tromey <tromey@redhat.com> |
1247 | ||
1248 | * gcj.texi (Extensions): Added xref. | |
1249 | (libgcj Runtime Properties): Document | |
1250 | gnu.gcj.runtime.VMClassLoader.library_control. | |
1251 | ||
ec00bfc0 AH |
1252 | 2003-08-20 Andrew Haley <aph@redhat.com> |
1253 | ||
eb158727 ZW |
1254 | * except.c (prepare_eh_table_type): Use new encoding for exception |
1255 | handlers when using -fno-assume-compiled. | |
ec00bfc0 | 1256 | |
7f8b4704 TT |
1257 | 2003-08-13 Tom Tromey <tromey@redhat.com> |
1258 | ||
1259 | * gcj.texi (Invoking gij): Document -X and -?. | |
1260 | ||
d0cf60cc ME |
1261 | 2003-08-13 Mohan Embar <gnustuff@thisiscool.com> |
1262 | ||
1263 | * Make-lang.in: Added missing win32-host.o to JAVA_OBJS, | |
1264 | GCJH_OBJS, JCFDUMP_OBJS | |
1265 | * win32-host.c: Removed the unnecessary and broken dependency | |
1266 | on jcf.h | |
1267 | ||
aecf4109 TT |
1268 | 2003-08-11 Tom Tromey <tromey@redhat.com> |
1269 | ||
1270 | * parse.y (java_check_regular_methods): Typo fixes. Call | |
1271 | check_interface_throws_clauses. Use | |
1272 | check_concrete_throws_clauses. | |
1273 | (check_interface_throws_clauses): New function. | |
1274 | (check_concrete_throws_clauses): New function. | |
1275 | (hack_is_accessible_p): New function. | |
1276 | (find_most_specific_methods_list): Added FIXME. | |
1277 | * typeck.c (lookup_do): Use `flags' argument to decide what to | |
1278 | do. Reimplemented. | |
1279 | (lookup_argument_method_generic): New function. | |
1280 | (lookup_argument_method2): Removed. | |
1281 | * jcf.h (ACC_INVISIBLE): New define. | |
1282 | * jcf-write.c (generate_classfile): Skip invisible methods. | |
1283 | * class.c (add_miranda_methods): New function. | |
1284 | (layout_class_methods): Use it. | |
1285 | (get_access_flags_from_decl): Use ACC_INVISIBLE. | |
1286 | * java-tree.h (METHOD_INVISIBLE): New define. | |
1287 | (lang_decl_func) [invisible]: New field. | |
1288 | (lookup_argument_method_generic): Declare. | |
1289 | (SEARCH_INTERFACE): New define. | |
1290 | (SEARCH_SUPER): Likewise. | |
1291 | (SEARCH_ONLY_INTERFACE): Likewise. | |
1292 | (SEARCH_VISIBLE): Likewise. | |
1293 | (lookup_argument_method2): Removed declaration. | |
1294 | ||
90281aec TT |
1295 | 2003-08-05 Tom Tromey <tromey@redhat.com> |
1296 | ||
1297 | Fix for PR java/11600: | |
1298 | * parse.y (java_complete_lhs): See whether we're calling a method | |
1299 | on an array. | |
1300 | (check_thrown_exceptions): Added `is_array_call' argument; | |
1301 | fixed `clone' checking; updated all callers. | |
1302 | ||
b3c3af2f SB |
1303 | 2003-08-05 Steven Bosscher <steven@gcc.gnu.org> |
1304 | ||
1305 | * java-tree.h (DECL_ESTIMATED_INSNS): Remove (moved to tree.h). | |
1306 | ||
0e046453 TT |
1307 | 2003-08-03 Tom Tromey <tromey@redhat.com> |
1308 | ||
1309 | * java-tree.h (METHOD_TRANSIENT): Removed. | |
1310 | * decl.c (pushdecl): Removed some dead code. | |
1311 | * class.c (get_access_flags_from_decl): Can't have transient | |
1312 | method. | |
1313 | (add_method_1): Can't have a transient method. | |
1314 | ||
8376cf3d AJ |
1315 | 2003-07-28 Andreas Jaeger <aj@suse.de> |
1316 | ||
1317 | * jvspec.c: Convert to ISO C90 prototypes. | |
1318 | ||
b8bae365 NS |
1319 | 2003-07-25 Nathan Sidwell <nathan@codesourcery.com> |
1320 | ||
1321 | * decl.c (force_poplevels): Fix warning call. | |
1322 | ||
cd475805 GDR |
1323 | 2003-07-25 Gabriel Dos Reis <gdr@integrable-solutions.net> |
1324 | ||
1325 | * expr.c (expand_java_field_op): Don't use xxx_with_decl | |
1326 | (expand_java_field_op): Likewise. | |
1327 | * class.c (layout_class_method): Likewise | |
1328 | (emit_register_classes): Likewise. | |
1329 | * decl.c (pushdecl): Likewise. | |
1330 | (poplevel): Likewise. | |
1331 | (force_poplevels): Likewise. | |
1332 | (give_name_to_locals): Likewise. | |
1333 | * check-init.c (check_for_initialization): Likewise. | |
1334 | ||
de7df9eb JM |
1335 | 2003-07-24 Jason Merrill <jason@redhat.com> |
1336 | ||
1337 | * java-tree.h: Move boolean_type_node et al to the back end. | |
1338 | ||
c68b0a84 KG |
1339 | 2003-07-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1340 | ||
1341 | * class.c java-tree.h jcf-write.c jvspec.c: Remove unnecessary | |
1342 | casts. | |
1343 | ||
2cc98056 NB |
1344 | 2003-07-19 Neil Booth <neil@daikokuya.co.uk> |
1345 | ||
1346 | * lang.opt: Don't show -MD_ and -MDD_. | |
1347 | ||
b2e608ca NB |
1348 | 2003-07-18 Neil Booth <neil@daikokuya.co.uk> |
1349 | ||
1350 | * lang-options.h: Remove. | |
1351 | * lang.opt: Add help text. | |
1352 | ||
683b1112 KH |
1353 | 2003-07-15 Kazu Hirata <kazu@cs.umass.edu> |
1354 | ||
1355 | * expr.c: Remove the last argument to expand_assignment(). | |
1356 | ||
602a82f3 | 1357 | 2003-07-09 Jan Hubicka <jh@suse.cz> |
084c1779 JH |
1358 | |
1359 | * java-tree.h (DECL_NUM_STMTS): Rename to... | |
1360 | (DECL_ESTIMATED_INSNS): ... this. | |
1361 | * lang.c (java_estimate_num_insns, java_estimate_num_insns_1): | |
1362 | New static functions. | |
1363 | (LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS): Define. | |
1364 | * parser.y (add_stmt_to_compound): Do not account statements. | |
1365 | ||
671d6ee7 MW |
1366 | 2003-07-08 Mark Wielaard <mark@klomp.org> |
1367 | ||
1368 | * gcj.texi: CNI now expands to Compiled Native Interface. | |
1369 | ||
c5ffd36c RO |
1370 | 2003-07-08 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> |
1371 | ||
1372 | * Make-lang.in (java/gcj.dvi): Use PWD_COMMAND. | |
1373 | ||
0cea056b NS |
1374 | 2003-07-07 Nathan Sidwell <nathan@codesourcery.com> |
1375 | ||
1376 | * expr.c (expand_byte_code): Adjist emit_line_note call. | |
1377 | ||
cb66e385 NB |
1378 | 2003-07-06 Neil Booth <neil@daikokuya.co.uk> |
1379 | ||
1380 | * lang.c (java_handle_option): Don't handle filenames. | |
1381 | ||
3dce1408 ZW |
1382 | 2003-07-02 Zack Weinberg <zack@codesourcery.com> |
1383 | ||
1384 | * jcf-path.c: Don't default-define PATH_SEPARATOR nor | |
1385 | DIR_SEPARATOR. | |
1386 | Use FILENAME_CMP. | |
1387 | * jcf-write.c: Don't default-define DIR_SEPARATOR. | |
1388 | * jcf.h: Delete COMPARE_FILENAMES definition. | |
1389 | ||
b86f6cd9 NB |
1390 | 2003-07-02 Neil Booth <neil@daikokuya.co.uk> |
1391 | ||
1392 | * lang.c (java_init_options): Update prototype. | |
1393 | ||
5b030314 NS |
1394 | 2003-07-01 Nathan Sidwell <nathan@codesourcery.com> |
1395 | ||
1396 | * decl.c (poplevel): Adjust define_label call. | |
1397 | ||
8ce33230 ZW |
1398 | 2003-06-27 Zack Weinberg <zack@codesourcery.com> |
1399 | ||
a6d682a0 ZW |
1400 | * gjavah.c (flag_jni): Make non-static. |
1401 | * parse-scan.y (ctxp): Make non-static. | |
1402 | ||
8ce33230 ZW |
1403 | * class.c (build_method_symbols_entry) |
1404 | * expr.c (get_offset_table_index) | |
1405 | * jcf-parse.c (jcf_parse): | |
1406 | Mark the definition static, matching the forward declaration. | |
1407 | ||
9eee5e72 NB |
1408 | 2003-06-26 Neil Booth <neil@daikokuya.co.uk> |
1409 | ||
1410 | * lang.c (java_handle_option): Don't check for missing arguments. | |
1411 | ||
1f9cc6db NS |
1412 | 2003-06-20 Nathan Sidwell <nathan@codesourcery.com> |
1413 | ||
1414 | * class.c (push_class): Use a location_t to save place. | |
1415 | (emit_register_classes): Set input_location. Adjust | |
1416 | expand_function_end call. | |
1417 | * resource.c (write_resource_constructor): Likewise. | |
1418 | * decl.c (end_java_method): Adjust expand_function_end call. | |
1419 | * parse.y (source_end_java_method): Likewise. | |
1420 | ||
f3f735eb RA |
1421 | 2003-06-17 Robert Abeles <rabeles@archaelogic.com> |
1422 | ||
1423 | * lang.c (java_handle_option): Likewise. | |
1424 | ||
7b086b11 NB |
1425 | 2003-06-16 Neil Booth <neil@daikokuya.co.uk> |
1426 | ||
1427 | * lang.c (java_handle_option): Special-casing of optional | |
1428 | joined arguments no longer needed. | |
1429 | * lang.opt: Update switches that take optional argument. | |
1430 | ||
be43ab4e NB |
1431 | 2003-06-15 Neil Booth <neil@daikokuya.co.uk> |
1432 | ||
1433 | * lang.opt: Declare Java. | |
1434 | * lang.c (java_init_options): Update. | |
1435 | ||
d185d268 NB |
1436 | 2003-06-15 Neil Booth <neil@daikokuya.co.uk> |
1437 | ||
1438 | * lang.c (version_flag): Rename to v_flag to avoid clash w/ toplev.h. | |
1439 | ||
cef67dce NB |
1440 | 2003-06-14 Neil Booth <neil@daikokuya.co.uk> |
1441 | ||
1442 | * lang-specs.h: Rewrite -MD and -MMD to append an underscore. | |
1443 | * lang.c (java_handle_option): -MD and -MMD have an underscore. | |
1444 | * lang.opt: -MD and -MMD have an underscore. | |
1445 | ||
ee6b0296 NS |
1446 | 2003-06-14 Nathan Sidwell <nathan@codesourcery.com> |
1447 | ||
1448 | * class.c (emit_register_classes): Adjust init_function_start | |
1449 | call. | |
1450 | * decl.c (complete_start_java_method): Likewise. | |
1451 | * resource.c (write_resource_constructor): Likewise. | |
1452 | ||
d7b42618 NB |
1453 | 2003-06-14 Neil Booth <neil@daikokuya.co.uk> |
1454 | ||
1455 | * Make-lang.in: Update to use options.c and options.h. | |
1456 | * lang.c: Include options.h not j-options.h. | |
1457 | (java_handle_option): Abort on unrecognized option. | |
1458 | (java_init_options): Request Java switches. | |
1459 | ||
7fb26bb0 NB |
1460 | 2003-06-11 Neil Booth <neil@daikokuya.co.uk> |
1461 | ||
1462 | * Make-lang.in: Handle mostlyclean. | |
1463 | ||
265411b6 TT |
1464 | 2003-06-11 Tom Tromey <tromey@redhat.com> |
1465 | ||
4a09cbac TT |
1466 | * lang.c (java_handle_option): Update dependency_tracking for |
1467 | OPT_MF case. | |
1468 | ||
265411b6 TT |
1469 | * lang.c (java_handle_option): OPT_fbootclasspath_ can take an |
1470 | empty argument. | |
1471 | ||
dc952677 AH |
1472 | 2003-06-10 Andrew Haley <aph@redhat.com> |
1473 | ||
1474 | * resource.c (write_resource_constructor): Use expand_expr to | |
1475 | generate the address of the label attached to a resource. | |
1476 | * Make-lang.in (java/resource.o): Add expr.h | |
1477 | ||
e076f71a AH |
1478 | 2003-06-10 Andrew Haley <aph@redhat.com> |
1479 | ||
1480 | * lang.c (LANG_HOOKS_DECL_OK_FOR_SIBCALL): New. | |
1481 | (java_decl_ok_for_sibcall): New. | |
1482 | ||
95ca6d8b NB |
1483 | 2003-06-09 Neil Booth <neil@daikokuya.co.uk> |
1484 | ||
1485 | * Make-lang.in (JAVA_OBJS, java/lang.o): Update. | |
1486 | (java/j-options.c, java/j-options.h): New. | |
1487 | * java-tree.h (resource_name, compile_resource_file, | |
1488 | compile_resource_data): Constify. | |
1489 | * jcf-write.c (jcf_write_base_directory): Similarly. | |
1490 | * jcf.h (jcf_write_base_directory): Similarly. | |
1491 | * lang.c: Include j-options.h. | |
1492 | (cl_options_count, cl_options, string_option, java_decode_option, | |
1493 | lang_f_options, lang_W_options, LANG_HOOKS_DECODE_OPTION, | |
1494 | process_option_with_no): Remove. | |
1495 | (resource_name): Constify. | |
1496 | (LANG_HOOKS_HANDLE_OPTION): Override. | |
1497 | (java_handle_option): New. | |
1498 | (java_init): Don't call jcf_path_init. | |
1499 | (java_init_options): Call jcf_path_init. | |
1500 | * lang.opt: New. | |
1501 | * resource.c (compile_resource_data, compile_resource_file): Constify. | |
1502 | ||
36f04556 NS |
1503 | 2003-06-09 Nathan Sidwell <nathan@codesourcery.com> |
1504 | ||
1505 | * java-tree.h (DECL_FUNCTION_LAST_LINE): New. | |
1506 | (struct lang_decl_func): Add last_line field. | |
1507 | * parse.h (DECL_SOURCE_LINE_MERGE, DECL_SOURCE_LINE_FIRST, | |
1508 | DECL_SOURCE_LINE_LAST): Remove. | |
1509 | * parse.y (missing_return_error, finish_method_declaration, | |
1510 | lookup_cl, start_artificial_method_body, source_end_java_method, | |
1511 | start_complete_expand_method): Adjust. | |
1512 | ||
f751e9c2 TT |
1513 | 2003-06-08 Tom Tromey <tromey@redhat.com> |
1514 | ||
1515 | * jvspec.c (jvgenmain_spec): Added `*' after fassume-compiled and | |
1516 | fno-assume-compiled. | |
1517 | ||
5f158b44 RS |
1518 | 2003-06-08 Roger Sayle <roger@eyesopen.com> |
1519 | ||
1520 | * builtins.c (define_builtin_type, builtin_types): Delete. | |
1521 | (define_builtin): Rewritten to take just the built-in code, | |
1522 | the function's name, type and fallback library function name. | |
1523 | All built-ins used by Java are implicit and BUILT_IN_NORMAL. | |
1524 | (initialize_builtins): Overhaul to define the GCC builtins | |
1525 | used by gcj manually, providing the Java run-time's | |
1526 | implementations as the fallback library function. | |
1527 | ||
f32c53c2 AG |
1528 | 2003-06-08 Anthony Green <green@redhat.com> |
1529 | ||
1530 | * parse.y (patch_cast): Fix conversions from floating-point to | |
1531 | integral types. | |
1532 | ||
c8b04b13 NB |
1533 | 2003-06-08 Neil Booth <neil@daikokuya.co.uk> |
1534 | ||
1535 | * Make-lang.in: Update. | |
1536 | * lang.c: Include opts.h. Define cl_options_count and cl_options. | |
1537 | ||
2772ef3e NB |
1538 | 2003-06-07 Neil Booth <neil@daikokuya.co.uk> |
1539 | ||
1540 | * lang.c (java_init_options): Update. | |
1541 | ||
602a82f3 | 1542 | 2003-06-05 Jan Hubicka <jh@suse.cz> |
8f231b5d JH |
1543 | |
1544 | * Make-lang.in: Add support for stageprofile and stagefeedback | |
1545 | ||
4fa26a60 RS |
1546 | 2003-05-31 Roger Sayle <roger@eyesopen.com> |
1547 | ||
1548 | * lang.c (java_init_options): Prescribe wrap-around two's | |
1549 | complement arithmetic overflow by setting flag_wrapv. | |
1550 | ||
833e1a77 RS |
1551 | 2003-05-29 Roger Sayle <roger@eyesopen.com> |
1552 | ||
1553 | * builtins.c (cos_builtin, sin_builtin, sqrt_builtin): Delete. | |
1554 | (builtin_record): Add an additional builtin_code field to | |
1555 | record which GCC built-in corresponds to the Java function. | |
1556 | (java_builtins): Add new entries for atan, atan2, exp, log, | |
1557 | pow and tan. | |
1558 | (max_builtin, min_builtin, abs_builtin): Perform constant | |
1559 | folding on the resulting tree. | |
1560 | (java_build_function_call_expr): Likewise, perform constant | |
1561 | folding on the resulting tree. | |
1562 | (initialize_builtins): The NULL creators are now allowed in | |
1563 | the java_builtins table, which is now terminated by an entry | |
1564 | with builtin_code == END_BUILTINS. | |
1565 | (check_for_builtin): Likewise. If the matching creator is | |
1566 | NULL, construct the call using java_build_function_call_expr | |
1567 | directly with the decl for the corresponding builtin_code. | |
1568 | ||
24bcc721 NN |
1569 | 2003-05-23 Nathanael Nerode <neroden@gcc.gnu.org> |
1570 | ||
1571 | * win32-host.c: Normalize copyright boilerplate. | |
1572 | ||
90ff44cf KG |
1573 | 2003-05-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1574 | ||
1575 | * parse.y (print_int_node): Use string concatentation on | |
1576 | HOST_WIDE_INT_PRINT_* format specifier to collapse multiple | |
1577 | function calls into one. | |
1578 | ||
fa6ef813 ZW |
1579 | 2003-05-13 Zack Weinberg <zack@codesourcery.com> |
1580 | ||
1581 | * jcf-parse.c, jcf-write.c, lex.c: Replace all calls to | |
1582 | fatal_io_error with calls to fatal_error; add ": %m" to the end of | |
1583 | all the affected error messages. | |
1584 | ||
3bec3c0c RH |
1585 | 2003-05-13 Richard Henderson <rth@redhat.com> |
1586 | ||
1587 | * class.c (layout_class_method): Set DECL_EXTERNAL. | |
1588 | * decl.c (java_mark_decl_local, java_mark_class_local): New. | |
1589 | * java-tree.h (java_mark_class_local): Declare. | |
1590 | * jcf-parse.c (parse_class_file): Use it. | |
1591 | * parse.y (java_expand_classes): Likewise. | |
1592 | ||
d4b56320 NS |
1593 | 2003-05-04 Nathan Sidwell <nathan@codesourcery.com> |
1594 | ||
1595 | * Make-lang.in (java/parse.o, java/parse-scan.o): Depend on input.h. | |
1596 | * lex.h: #include input.h. | |
1597 | * jv-scan.c (input_filename): Remove. | |
1598 | ||
73cb3b5a TT |
1599 | 2003-05-02 Tom Tromey <tromey@redhat.com> |
1600 | ||
1601 | PR java/10491: | |
1602 | * gjavah.c (HANDLE_INNERCLASSES_ATTRIBUTE): New macro. | |
1603 | (handle_inner_classes): New function. | |
1604 | ||
fcc8cecb TT |
1605 | 2003-05-01 Tom Tromey <tromey@redhat.com> |
1606 | ||
1607 | PR java/10459: | |
1608 | * parse.y (finish_for_loop): Do nothing if update expression is a | |
1609 | EXPR_WFL_NODE wrapping nothing. | |
1610 | (java_complete_lhs) <COMPOUND_EXPR>: Likewise. | |
1611 | ||
6060edcb NS |
1612 | 2003-05-02 Nathan Sidwell <nathan@codesourcery.com> |
1613 | ||
1614 | * lex.h (input_lineno): Remove declaration. | |
1615 | * parse-scan.y: #include input.h. | |
1616 | (input_filename): Remove declaration. | |
1617 | (input_location): Add definition. | |
1618 | (input_line): Remove definition. | |
1619 | ||
3489e061 NS |
1620 | 2003-05-01 Nathan Sidwell <nathan@codesourcery.com> |
1621 | ||
1622 | * lex.h (lineno): Rename to ... | |
1623 | (input_line): ... here | |
1624 | * parse-scan.y (lineno): Rename to ... | |
1625 | (input_line): ... here. | |
1626 | (reset_report): Rename lineno to input_line. | |
1627 | * check-init.c (check_init): Likewise. | |
1628 | * class.c (push_class): Likewise. | |
1629 | * decl.c (complete_start_java_method, end_java_method): Likewise. | |
1630 | * expr.c (expand_byte_code): Likewise. | |
1631 | * jcf-parse.c (give_name_to_class, parse_class_file): Likewise. | |
1632 | * jcf-write.c (generate_bytecode_insns): Likewise. | |
1633 | * lex.c (java_init_lex, java_allocate_new_line, | |
1634 | do_java_lex): Likewise. | |
1635 | * parse.h (YYNOT_TWICE): Likewise. | |
1636 | * parse.y (empty_statement, expression_statement, | |
1637 | java_pop_parser_context, java_parser_context_save_global, | |
1638 | yyerror, register_fields, method_header, safe_layout_class, | |
1639 | find_in_imports_on_demand, create_artificial_method, | |
1640 | source_end_java_method, start_complete_expand_method, | |
1641 | build_thisn_assign, java_complete_lhs, | |
1642 | maybe_absorb_scoping_block): Likewise. | |
1643 | ||
ef963bc8 ME |
1644 | 2003-04-20 Mohan Embar <gnustuff@thisiscool.com> |
1645 | ||
1646 | * jcf-io.c (find_class): use DIR_SEPARATOR instead of | |
1647 | '/' when computing java source filename | |
1648 | ||
e6311b9e TT |
1649 | 2003-04-13 Tom Tromey <tromey@redhat.com> |
1650 | ||
1651 | * gjavah.c (print_c_decl): Indentation fix. | |
1652 | ||
dcf92453 ZW |
1653 | 2003-04-12 Zack Weinberg <zack@codesourcery.com> |
1654 | ||
1655 | * class.c (make_field_value, make_method_value, get_dispatch_table) | |
1656 | (make_class_data, emit_offset_symbol_table) | |
1657 | * constants.c (build_constants_constructor) | |
1658 | * java-tree.h (START_RECORD_CONSTRUCTOR) | |
1659 | * parse.y (maybe_build_array_element_wfl): | |
1660 | Use build_constructor. | |
1661 | ||
04a0be36 EB |
1662 | 2003-04-10 Eric Blake <ebb9@email.byu.edu> |
1663 | ||
1664 | PR java/10253: | |
1665 | * parse.y (string_convert_int_cst): Always use at least one digit | |
1666 | in string conversion. Remove ASCII dependence. | |
1667 | (merge_string_cste): Fix merging of 3-byte UTF-8 characters. | |
1668 | ||
72f339d2 AH |
1669 | 2003-03-16 Mohan Embar <gnustuff@thisiscool.com> |
1670 | ||
1671 | * Make-lang.in: added win32-host.c | |
1672 | * jcf.h: defined macro JCF_OPEN_EXACT_CASE which | |
1673 | resolves to open() on non-Win32 platforms and | |
1674 | Win32-specific jcf_open_exact_case() on Win32 | |
1675 | * jcf-io.c (find_class): use JCF_OPEN_EXACT_CASE | |
1676 | when trying .java and .class files | |
1677 | * win32-host.c: added to repository. Defines | |
1678 | Win32-specific jcf_open_exact_case() | |
1679 | ||
1680 | 2003-04-10 Andrew Haley <aph@redhat.com> | |
1681 | ||
1682 | * jcf-write.c (struct jcf_partial): num_jsrs: new field. | |
1683 | (maybe_free_localvar): Renamed from localvar_free. | |
1684 | Add new arg, really. | |
1685 | (generate_bytecode_insns): Set new variable, jsrs. | |
1686 | Only free local vars if no jsr insns have been emittted. | |
1687 | Call maybe_free_localvar, not localvar_free. | |
1688 | ||
438f63a8 JM |
1689 | 2003-03-30 Joseph S. Myers <jsm@polyomino.org.uk> |
1690 | ||
1691 | * gcj.texi: Remove @ at start of file. | |
1692 | ||
dcb0eee2 TT |
1693 | 2003-03-25 Tom Tromey <tromey@redhat.com> |
1694 | ||
1695 | * parse.y (create_interface): Call CHECK_DEPRECATED. | |
1696 | ||
62c9aa5f ZW |
1697 | 2003-03-23 Zack Weinberg <zack@codesourcery.com> |
1698 | ||
1699 | * Make-lang.in: Link jcf-dump against $(LDEXP_LIB). | |
1700 | ||
649eaf9b ZW |
1701 | 2003-03-21 Zack Weinberg <zack@codesourcery.com> |
1702 | ||
1703 | * javaop.h (jfloat, jdouble): Make them structures mirroring | |
1704 | the bit fields of IEEE float and double respectively. | |
1705 | (JFLOAT_FINITE, JFLOAT_QNAN_MASK, JFLOAT_EXP_BIAS, | |
1706 | JDOUBLE_FINITE, JDOUBLE_QNAN_MASK, JDOUBLE_EXP_BIAS): New. | |
1707 | (union Word, union DWord): Delete. | |
1708 | (WORD_TO_FLOAT, WORDS_TO_DOUBLE): Update to match. | |
1709 | ||
1710 | * gjavah.c (java_float_finite, java_double_finite, F_NAN_MASK, | |
1711 | D_NAN_MASK): Delete. | |
1712 | (jni_print_float, jni_print_double): New. Generate | |
1713 | hexadecimal floating constants. | |
1714 | (print_field_info): Use jni_print_float/double. | |
1715 | ||
1716 | * jcf-dump.c: Include math.h. Use ldexp/frexp to assemble | |
1717 | finite floating point numbers for output; special case | |
1718 | non-finite floats. | |
1719 | ||
2bd3ecad NN |
1720 | 2003-03-19 Nathanael Nerode <neroden@gcc.gnu.org> |
1721 | ||
1722 | * lang.c (java_dump_tree): Change return type from 'int' to 'bool'. | |
1723 | Replace 0 and 1 with true and false in return statements. | |
1724 | ||
b25a23bd TT |
1725 | 2003-03-19 Tom Tromey <tromey@redhat.com> |
1726 | ||
1727 | * lex.c (do_java_lex): Renamed from java_lex. | |
1728 | (java_lex): New function. | |
1729 | Include timevar.h. | |
1730 | ||
2f29e5e8 TT |
1731 | 2003-03-13 Tom Tromey <tromey@redhat.com> |
1732 | ||
1733 | * parse.y (resolve_inner_class): Error if qualifier is a primitive | |
1734 | type. | |
1735 | ||
68566610 AH |
1736 | 2003-03-04 Andrew Haley <aph@redhat.com> |
1737 | ||
649eaf9b ZW |
1738 | * gjavah.c (is_first_data_member): New global variable. |
1739 | (print_c_decl): If it's the first data member, align it as the | |
1740 | superclass. | |
1741 | (process_file): Set is_first_data_member. | |
68566610 | 1742 | |
8b8e6c64 TT |
1743 | 2003-03-11 Tom Tromey <tromey@redhat.com> |
1744 | ||
1745 | * parse.y (resolve_field_access): Initialize class if field is | |
1746 | found in another static field. | |
1747 | * expr.c (build_class_init): Don't optimize out initialization of | |
1748 | implemented interface. | |
1749 | ||
3d874dea AH |
1750 | 2003-03-11 Andrew Haley <aph@redhat.com> |
1751 | ||
1752 | * jcf-io.c (caching_stat): Initialize origsep to remove compiler | |
1753 | warning. | |
1754 | ||
630287af RM |
1755 | 2003-03-10 Ranjit Mathew <rmathew@hotmail.com> |
1756 | ||
1757 | * jcf-io.c (caching_stat): Account for both DIR_SEPARATOR | |
1758 | and DIR_SEPARATOR_2 for a target. | |
1759 | Correct minor typos. | |
1760 | ||
1761 | * jcf-write.c (make_class_file_name): Take both DIR_SEPARATOR | |
1762 | and DIR_SEPARATOR_2 for a target into account. | |
1763 | ||
4bfec483 NB |
1764 | 2003-03-08 Neil Booth <neil@daikokuya.co.uk> |
1765 | ||
1766 | * lang.c (java_init): Update prototype, move code to java_post_options. | |
1767 | (java_post_options): Similarly. | |
1768 | ||
530d4230 RM |
1769 | 2003-03-05 Ranjit Mathew <rmathew@hotmail.com> |
1770 | ||
1771 | * jcf.h (COMPARE_FILENAMES): New macro similar to "strcmp" to | |
1772 | compare file name components depending on the case-sensitivity | |
1773 | or otherwise of the host file system. | |
1774 | ||
1775 | * jcf-path.c (add_entry): Use COMPARE_FILENAMES instead of | |
1776 | "strcmp" to compare file name components. | |
1777 | Use IS_DIR_SEPARATOR instead of comparing directly against | |
1778 | DIR_SEPARATOR. | |
649eaf9b | 1779 | (jcf_path_extdirs_arg): Use IS_DIR_SEPARATOR instead of |
530d4230 RM |
1780 | comparing directly against DIR_SEPARATOR. |
1781 | ||
5993642d TT |
1782 | 2003-03-04 Tom Tromey <tromey@redhat.com> |
1783 | ||
1784 | * Make-lang.in (java.tags): New target. | |
1785 | ||
08291658 RS |
1786 | 2003-03-01 Roger Sayle <roger@eyesopen.com> |
1787 | ||
1788 | * java/builtins.c (builtin_type): Handle DEF_FUNCTION_TYPE_VAR_3. | |
1789 | (initialize_builtins): Handle DEF_FUNCTION_TYPE_VAR_3. | |
1790 | ||
11522327 TT |
1791 | 2003-03-01 Tom Tromey <tromey@redhat.com> |
1792 | ||
1793 | * parse.y (jdep_resolve_class): Only check deprecation if we found | |
1794 | a decl. | |
1795 | ||
0ea05c0d TT |
1796 | 2003-02-28 Tom Tromey <tromey@redhat.com> |
1797 | ||
1798 | PR java/9695: | |
1799 | * class.c (maybe_layout_super_class): Always pass a WFL to | |
1800 | do_resolve_class. | |
1801 | * parse.y (do_resolve_class): Updated comment to explain | |
1802 | parameters. | |
1803 | ||
49b973cb TT |
1804 | 2003-02-26 Tom Tromey <tromey@redhat.com> |
1805 | ||
1806 | * jcf-write.c (generate_classfile): Check whether class is | |
1807 | deprecated before writing attribute count. | |
1808 | ||
b052d8ee RS |
1809 | 2003-02-25 Roger Sayle <roger@eyesopen.com> |
1810 | ||
1811 | * java/decl.c (java_init_decl_processing): Get soft_fmod_node from | |
1812 | built_in_decls[BUILT_IN_FMOD] rather than define it ourselves. | |
649eaf9b | 1813 | |
f94ae540 TT |
1814 | 2003-02-23 Tom Tromey <tromey@redhat.com> |
1815 | ||
1816 | * lang-options.h: Added -Wdeprecated. | |
1817 | * gcj.texi (Warnings): Document -Wdeprecated. | |
1818 | * java-tree.h (flag_deprecated): Declare. | |
1819 | * lang.c (lang_W_options): Added deprecated. | |
1820 | (flag_deprecated): New global. | |
1821 | * chartables.h: Rebuilt. | |
1822 | * gen-table.pl (process_one): Look at whitespace. | |
1823 | (print_tables): Define LETTER_SPACE, LETTER_MASK. | |
1824 | * parse.h (CLEAR_DEPRECATED): New macro. | |
1825 | (CHECK_DEPRECATED_NO_RESET): New macro. | |
1826 | * jcf-parse.c (handle_deprecated): New function. | |
1827 | (HANDLE_DEPRECATED_ATTRIBUTE): New define. | |
1828 | * jcf-reader.c (get_attribute): Handle Deprecated attribute. | |
1829 | * parse.y (resolve_type_during_patch): Check deprecation. | |
1830 | (jdep_resolve_class): Likewise. | |
1831 | (process_imports): Likewise. | |
1832 | (resolve_expression_name): Likewise. | |
1833 | (check_deprecation): Strip arrays from decl. Check | |
1834 | flag_deprecated. | |
1835 | (patch_method_invocation): Also check the particular constructor | |
1836 | for deprecation. | |
1837 | (register_fields): Use CHECK_DEPRECATED_NO_RESET in loop. | |
1838 | * jcf-write.c (append_deprecated_attribute): New function. | |
1839 | (generate_classfile): Generate deprecated attribute when | |
1840 | appropriate. | |
1841 | * lex.c (java_parse_doc_section): Return type now void. Rewrote. | |
1842 | (java_lex) [case '*']: Simplify logic. | |
1843 | (java_start_char_p): Use LETTER_MASK. | |
1844 | (java_part_char_p): Likewise. | |
1845 | (java_space_char_p): New function. | |
1846 | ||
dbbf88d1 NS |
1847 | 2003-02-20 Nathan Sidwell <nathan@codesourcery.com> |
1848 | ||
1849 | Change base class access representation. | |
1850 | * java/class.c (set_super_info): Don't set TREE_VIA_PUBLIC. | |
1851 | (add_interface_do): Likewise. | |
1852 | ||
697ec326 RM |
1853 | 2003-02-12 Ranjit Mathew <rmathew@hotmail.com> |
1854 | ||
649eaf9b | 1855 | * decl.c (java_init_decl_processing): Change |
697ec326 RM |
1856 | soft_lookupjnimethod_node to reflect the change in |
1857 | signature of _Jv_LookupJNIMethod in libjava/jni.cc | |
1858 | * expr.c (build_jni_stub): Calculate and pass the size | |
1859 | on the stack of the arguments to a JNI function. Use | |
649eaf9b | 1860 | new target macro MODIFY_JNI_METHOD_CALL to allow a |
697ec326 RM |
1861 | target to modify the call to a JNI method. |
1862 | ||
afc432a9 RS |
1863 | 2003-02-08 Roger Sayle <roger@eyesopen.com> |
1864 | ||
1865 | * jcf-io.c (java_or_class_file): Use libiberty's lbasename | |
1866 | instead of basename to avoid compiler warnings on Tru64. | |
1867 | ||
b3a8389d JM |
1868 | 2003-02-04 Joseph S. Myers <jsm@polyomino.org.uk> |
1869 | ||
1870 | * gcj.texi: Update to GFDL 1.2. | |
1871 | ||
2d7b3505 AH |
1872 | 2003-01-31 Andrew Haley <aph@redhat.com> |
1873 | ||
1874 | * parse.y (java_expand_classes): Scan the whole class list looking | |
1875 | for access methods that haven't yet been expanded. | |
1876 | ||
7d503466 AB |
1877 | 2003-01-31 Adrian Bunk <bunk@fs.tum.de> |
1878 | ||
1879 | Fix for java/4269: | |
1880 | ||
1881 | * jv-scan.c: Use HAVE_LANGINFO_CODESET instead of HAVE_NL_LANGINFO | |
1882 | to fix bootstrap on sparc-unknown-netbsdelf1.5. | |
1883 | * jcf-parse.c: Likewise. | |
1884 | ||
36da0e78 MW |
1885 | 2003-01-31 Mark Wielaard <mark@klomp.org> |
1886 | ||
1887 | * gjavah.c (throwable_p): Allocate 1 more byte for string. | |
1888 | ||
1824b90d NS |
1889 | 2003-01-31 Nathan Sidwell <nathan@codesourcery.com> |
1890 | ||
1891 | * class.c (make_class): Use BINFO_ELTS. | |
1892 | (set_super_info): Likewse. | |
1893 | (add_interface_do): Likewise. | |
1894 | ||
7e278bae TT |
1895 | 2003-01-30 Tom Tromey <tromey@redhat.com> |
1896 | ||
1897 | * jcf-parse.c (read_class): Update identifier's class value if it | |
1898 | changed during parsing. | |
1899 | ||
65eb9b87 LR |
1900 | 2003-01-30 Loren James Rittle <ljrittle@acm.org> |
1901 | ||
1902 | * Make-lang.in (po-generated): Find the targets in $(parsedir). | |
1903 | Propagate change to all other rules as required. | |
1904 | (java/parse-scan.o): Add explicit dependency on | |
1905 | $(parsedir)/java/parse-scan.c . | |
1906 | ||
c78f2b91 TT |
1907 | 2003-01-29 Tom Tromey <tromey@redhat.com> |
1908 | ||
1909 | * parse.y (patch_assignment): Only transform the rhs of an | |
1910 | assignment when compiling to native. | |
1911 | ||
0d42c3c2 TT |
1912 | 2003-01-28 Tom Tromey <tromey@redhat.com> |
1913 | ||
1914 | * jcf-write.c (generate_bytecode_conditional): Typo fixes. | |
1915 | ||
82b22c42 TT |
1916 | 2003-01-28 Tom Tromey <tromey@redhat.com> |
1917 | ||
1918 | * lex.c (java_lex): Don't include UEOF as part of token. | |
1919 | (java_read_unicode): Error if \u sequence prematurely terminated. | |
1920 | ||
6a807d35 TT |
1921 | 2003-01-27 Tom Tromey <tromey@redhat.com> |
1922 | ||
1923 | * parse.y (java_check_regular_methods): Check for construct after | |
1924 | checking types in throws clause. | |
1925 | ||
c2c98445 TT |
1926 | 2003-01-24 Tom Tromey <tromey@redhat.com> |
1927 | ||
1928 | * class.c (build_static_field_ref): Only a String or numeric field | |
1929 | can fold to a constant. | |
1930 | ||
8bef0925 TT |
1931 | 2003-01-23 Tom Tromey <tromey@redhat.com> |
1932 | ||
1933 | * jcf-parse.c (parse_zip_file_entries): Overwrite trailing \0 of | |
1934 | file name in resource buffer. | |
1935 | ||
1f369e60 TT |
1936 | 2003-01-23 Tom Tromey <tromey@redhat.com> |
1937 | ||
1938 | * expr.c (build_known_method_ref): Use method's context to find | |
1939 | method table index. | |
1940 | ||
0f0ff6ec TT |
1941 | 2003-01-23 Tom Tromey <tromey@redhat.com> |
1942 | ||
1943 | * constants.c (set_constant_entry): Allocated cleared memory. | |
1944 | ||
850ccfae TT |
1945 | 2003-01-22 Tom Tromey <tromey@redhat.com> |
1946 | ||
1947 | * java-tree.h: Don't use PARAMS. | |
1948 | * resource.c: Add prototypes for all functions. | |
1949 | (write_resource_constructor): Use `const char *' to avoid | |
1950 | warning. | |
1951 | ||
e00d2127 NN |
1952 | 2003-01-22 Nathanael Nerode <neroden@gcc.gnu.org> |
1953 | ||
1954 | * jcf-parse.c (process_zip_dir): Remove unused variable. | |
1955 | ||
906c7c32 TT |
1956 | 2003-01-22 Tom Tromey <tromey@redhat.com> |
1957 | ||
1958 | * expr.c (build_invokeinterface): Abort if method's context is not | |
1959 | an interface. | |
1960 | ||
3e895978 TT |
1961 | 2003-01-22 Tom Tromey <tromey@redhat.com> |
1962 | ||
1963 | * gcj.texi (Input and output files): Mention non-class entries. | |
1964 | * decl.c (java_init_decl_processing): Call | |
1965 | init_resource_processing. | |
1966 | * java-tree.h (compile_resource_data, write_resource_constructor, | |
1967 | compile_resource_file, init_resource_processing): Declare. | |
1968 | * config-lang.in (gtfiles): Added resource.c. | |
1969 | * Make-lang.in (gt-java-resource.h): New target. | |
1970 | (JAVA_OBJS): Added resource.o. | |
1971 | (java/resource.o): New target. | |
1972 | * resource.c: New file. | |
1973 | * class.c (compile_resource_file): Moved to resource.c. | |
1974 | (registerResource_libfunc): Likewise. | |
1975 | (utf8_decl_list): Mark with GTY; now static. | |
1976 | * jcf-parse.c (classify_zip_file): New function. | |
1977 | (parse_zip_file_entries): Use it; compile .properties files. | |
1978 | (process_zip_dir): Use classify_zip_file and compute_class_name. | |
1979 | Don't write class name into zip directory. | |
1980 | (java_parse_file): Call write_resource_constructor. | |
1981 | (compute_class_name): New function. | |
1982 | * jcf-io.c (read_zip_member): Reindented. | |
1983 | ||
5c64ead4 TT |
1984 | 2003-01-21 Tom Tromey <tromey@redhat.com> |
1985 | ||
1986 | * class.c (supers_all_compiled): New function. | |
1987 | (make_class_data): Use it. | |
1988 | ||
9179646e TT |
1989 | 2003-01-21 Tom Tromey <tromey@redhat.com> |
1990 | ||
1991 | * parse.y (method_header): Native method can't be strictfp. | |
1992 | No method can be transient or volatile. | |
1993 | ||
dd859b8a KG |
1994 | 2003-01-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1995 | ||
1996 | Make-lang.in (jvspec.o-warn): Add -Wno-error. | |
1997 | ||
634661fe KH |
1998 | 2003-01-18 Kazu Hirata <kazu@cs.umass.edu> |
1999 | ||
2000 | * check-init.c: Fix comment typos. | |
2001 | * class.c: Likewise. | |
2002 | * constants.c: Likewise. | |
2003 | * decl.c: Likewise. | |
2004 | * except.c: Likewise. | |
2005 | * expr.c: Likewise. | |
2006 | * java-except.h: Likewise. | |
2007 | * java-tree.h: Likewise. | |
2008 | * javaop.h: Likewise. | |
2009 | * jcf-dump.c: Likewise. | |
2010 | * jcf-io.c: Likewise. | |
2011 | * jcf-parse.c: Likewise. | |
2012 | * jcf-write.c: Likewise. | |
2013 | * lang.c: Likewise. | |
2014 | * mangle.c: Likewise. | |
2015 | * typeck.c: Likewise. | |
2016 | * verify.c: Likewise. | |
2017 | ||
a1fb4e91 KG |
2018 | 2003-01-18 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2019 | ||
2020 | * Make-lang.in (java/jcf-write.o): Depend on $(TM_P_H). | |
2021 | * jcf-write.c: Include "tm_p.h". | |
2022 | ||
1faad0fc KG |
2023 | 2003-01-17 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2024 | ||
2025 | * jcf-io.c (caching_stat): Cast the 3rd arg of scandir to void*. | |
2026 | ||
fc555370 KG |
2027 | 2003-01-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2028 | ||
f981519d KG |
2029 | * builtins.c (java_build_function_call_expr): Renamed from |
2030 | build_function_call_expr. All callers changed. | |
2031 | ||
0334ef47 KG |
2032 | * Make-lang.in (java/jcf-parse.o): Depend on $(TM_P_H). |
2033 | * jcf-parse.c: Include tm_p.h. | |
2034 | ||
fc555370 KG |
2035 | * jcf-write.c (generate_bytecode_insns): Avoid signed/unsigned |
2036 | warning. | |
2037 | ||
d9bbf3f7 TT |
2038 | 2003-01-14 Tom Tromey <tromey@redhat.com> |
2039 | ||
2040 | * class.c (make_class_data): Check that super is compiled before | |
2041 | building class reference to it. | |
2042 | ||
47411341 AH |
2043 | 2003-01-14 Andrew Haley <aph@redhat.com> |
2044 | ||
2045 | * decl.c (java_init_decl_processing): _Jv_NewMultiArray is a | |
649eaf9b | 2046 | varargs function -- correct. |
47411341 | 2047 | |
e5c9ced4 AH |
2048 | 2003-01-14 Andrew Haley <aph@redhat.com> |
2049 | ||
2050 | * decl.c (java_init_decl_processing): Temporarily back out previous patch. | |
2051 | ||
50cbc605 AH |
2052 | 2003-01-14 Andrew Haley <aph@redhat.com> |
2053 | ||
2054 | * decl.c (java_init_decl_processing): _Jv_NewMultiArray is a | |
2055 | varargs function -- correct. | |
2056 | ||
2057 | * parse.y (patch_assignment): Copy the rhs of an assignment into a | |
2058 | temporary if the RHS is a reference. | |
2059 | ||
0a2f0c54 KG |
2060 | 2003-01-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2061 | ||
b3504bc1 KG |
2062 | * Make-lang.in (keyword.h): Pass "-L ANSI-C" to gperf. |
2063 | * keyword.h: Regenerated. | |
2064 | ||
0a2f0c54 KG |
2065 | * All Files: Convert to ISO C style function definitions. |
2066 | ||
43a4a12b NN |
2067 | 2003-01-09 Nathanael Nerode <neroden@gcc.gnu.org> |
2068 | ||
2069 | * parse.y (check_pkg_class_access): ANSIfy definition. | |
2070 | ||
77d3109b KG |
2071 | 2003-01-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2072 | ||
d12689d2 KG |
2073 | * decl.c, parse-scan.y, parse.y: Don't cast return value of |
2074 | xmalloc et al. | |
2075 | ||
77d3109b KG |
2076 | * class.c, gjavah.c, parse.y, verify.c: Don't use PTR. |
2077 | ||
17211ab5 GK |
2078 | 2003-01-09 Geoffrey Keating <geoffk@apple.com> |
2079 | ||
2080 | Merge from pch-branch: | |
2081 | ||
2082 | 2002-12-02 Geoffrey Keating <geoffk@apple.com> | |
2083 | ||
2084 | * Make-lang.in (java/gjavah.o): Update dependencies. | |
2085 | * gjavah.c: Include ggc.h. | |
2086 | ||
2087 | 2002-08-16 Geoffrey Keating <geoffk@redhat.com> | |
2088 | ||
2089 | * Make-lang.in (GCJH_OBJS): Add ggc-none.o. | |
2090 | (JCFDUMP_OBJS): Add ggc-none.o. | |
2091 | (java/jcf-dump.o): Depend on GGC_H. | |
2092 | * jcf-reader.c (jcf_parse_constant_pool): Use ggc_alloc to allocate | |
2093 | CPool substructures. | |
2094 | * jcf-parse.c (process_zip_dir): Use ggc_alloc to allocate JCFs. | |
2095 | * jcf-dump.c: Include ggc.h. | |
2096 | ||
2097 | 2002-08-08 Geoffrey Keating <geoffk@redhat.com> | |
2098 | ||
2099 | * jcf.h (union cpool_entry): New. | |
2100 | (struct CPool): Use gengtype to mark. Change field 'data' to be | |
2101 | an array of unions. | |
2102 | (struct JCF): Use gengtype to mark. | |
2103 | (CPOOL_UINT): Update for new cpool_entry type. | |
2104 | (CPOOL_USHORT1): Likewise. | |
2105 | (CPOOL_USHORT2): Likewise. | |
2106 | (CPOOL_FINISH): Use GC to free cpool subfields. | |
2107 | * parse.h (struct parser_ctxt): Mark field current_jcf. | |
2108 | * lex.c (java_init_lex): Use GC to allocate struct JCF. | |
2109 | * jcf-parse.c (HANDLE_CONSTANT_Utf8): Update for new cpool_entry type. | |
2110 | (main_jcf): Use gengtype to mark. | |
2111 | (ggc_mark_jcf): Delete. | |
2112 | (get_constant): Update for new cpool_entry type. | |
2113 | (give_name_to_class): Likewise. | |
2114 | (get_class_constant): Likewise. | |
2115 | (init_outgoing_cpool): Use GGC to allocate struct CPool. | |
2116 | (java_parse_file): Use GGC to allocate struct JCF. | |
2117 | (init_jcf_parse): Don't call ggc_add_root. | |
2118 | * jcf-reader.c (jcf_parse_constant_pool): Update for new | |
2119 | cpool_entry type. | |
2120 | * java-tree.h (current_jcf): Use gengtype to mark. | |
2121 | (CPOOL_UTF): Update for new cpool_entry type. | |
2122 | (outgoing_cpool): Use gengtype to mark. | |
2123 | (struct lang_type): GC struct JCF and struct CPool. | |
2124 | * config-lang.in (gtfiles): Add jcf.h. | |
2125 | * constants.c (find_tree_constant): New. | |
2126 | (set_constant_entry): Allocate cpool subfields using GGC. Update | |
2127 | for new cpool_entry type. | |
2128 | (find_constant1): Update for new cpool_entry type. | |
2129 | (find_constant2): Likewise. | |
2130 | (find_utf8_constant): Use find_tree_constant. | |
2131 | (find_class_or_string_constant): Remove unnecessary cast to jword. | |
2132 | Update for new cpool_entry type. | |
2133 | (count_constant_pool_bytes): Update for new cpool_entry type. | |
2134 | (write_constant_pool): Likewise. | |
2135 | (alloc_name_constant): Use find_tree_constant. | |
2136 | (build_constants_constructor): Update for new cpool_entry type. | |
2137 | ||
2138 | 2002-08-08 Geoffrey Keating <geoffk@redhat.com> | |
2139 | ||
2140 | * parse.y (mark_parser_ctxt): Delete. | |
2141 | (goal): Don't use ggc_add_root. | |
2142 | (create_new_parser_context): Use GC to allocate struct parser_ctxt. | |
2143 | (java_pop_parser_context): Let GC free parser_ctxt. | |
2144 | (java_parser_context_resume): Likewise. | |
2145 | * parse.h (struct parser_ctxt): Use gengtype to mark. | |
2146 | (ctxp): Likewise. | |
2147 | (ctxp_for_generation): Likewise. | |
2148 | * lex.h (struct java_lc_s): Mark for gengtype. | |
2149 | (java_lexer): Rearrange for gengtype. | |
2150 | * config-lang.in (gtfiles): Add lex.h, parse.h. | |
2151 | ||
b3339cf7 KG |
2152 | 2003-01-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2153 | ||
d2097937 KG |
2154 | * All Files: Remove PARAMS macro. |
2155 | ||
6ff2fe39 KG |
2156 | * expr.c, gjavah.c, javaop.h, jcf-dump.c, jcf-io.c, jcf-reader.c, |
2157 | jcf-write.c, jcf.h, jv-scan.c: Don't rely on the `DEFUN', `AND' or | |
2158 | `__STDC__' macros. | |
2159 | ||
b3339cf7 KG |
2160 | * jv-scan.c, parse.y: Remove VPARAMS, VA_OPEN, VA_FIXEDARG and |
2161 | VA_CLOSE. | |
2162 | ||
8a4c5898 CC |
2163 | 2003-01-09 Christian Cornelssen <ccorn@cs.tu-berlin.de> |
2164 | ||
2165 | * Make-lang.in (java.install-common, java.uninstall, | |
2166 | java.install-info, java.install-man): Prepend $(DESTDIR) | |
2167 | to destination paths in all (un)installation commands. | |
2168 | (java.install-common): Rewrite $(LN) command to support | |
2169 | DESTDIR with "ln" as well as with "ln -s". | |
2170 | ||
2f23f5c1 NN |
2171 | 2003-01-08 Nathanael Nerode <neroden@gcc.gnu.org> |
2172 | ||
2173 | * java-tree.h: Protect against multiple inclusion. | |
2174 | ||
b47ffb8f TT |
2175 | 2003-01-07 Tom Tromey <tromey@redhat.com> |
2176 | ||
2177 | * class.c (add_assume_compiled): Don't adjust parent if we're | |
2178 | already at the root of tree. | |
2179 | ||
c7c50494 KG |
2180 | 2003-01-05 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2181 | ||
2182 | * lang.c (dump_compound_expr): Prototype. | |
2183 | ||
f3ce4aba TT |
2184 | 2003-01-03 Tom Tromey <tromey@redhat.com> |
2185 | ||
2186 | Fix for PR java/8712: | |
2187 | * expr.c (build_instanceof): Build an NE_EXPR, not a COND_EXPR, | |
2188 | when simply checking against `null'. | |
2189 | ||
60db58b2 TT |
2190 | 2003-01-03 Tom Tromey <tromey@redhat.com> |
2191 | ||
0320cac3 TT |
2192 | * gcj.texi (Standard Properties): Document http.proxyHost and |
2193 | http.proxyPort. | |
2194 | ||
60db58b2 TT |
2195 | * gcj.texi (GNU Classpath Properties): Document new properties. |
2196 | ||
43c6a96a SB |
2197 | 2003-01-02 Steven Bosscher <s.bosscher@student.tudelft.nl> |
2198 | ||
2199 | * java/jcf-reader.c, java/jvgenmain.c, java/keyword.gperf, | |
2200 | java/lang-options.h, java/mangle.c, java/mangle_name.c, | |
2201 | java/xref.c, java/zextract.c,java/zipfile.h: Fix copyright years. | |
2202 | ||
f309ff0a SB |
2203 | 2003-01-01 Steven Bosscher <s.bosscher@student.tudelft.nl> |
2204 | ||
2205 | * Make-lang.in, boehm.c, buffer.c, | |
2206 | buffer.h, builtins.c, class.c, | |
2207 | config-lang.in, constants.c, | |
2208 | convert.h, decl.c, except.c, | |
2209 | expr.c, java-except.h, | |
2210 | java-tree.h, javaop.def, | |
2211 | jcf-parse.c, jcf-write.c, | |
2212 | jv-scan.c, jvgenmain.c, | |
43c6a96a | 2213 | jvspec.c, keyword.gperf, |
f309ff0a SB |
2214 | keyword.h, lang-options.h, |
2215 | lang-specs.h, lang.c, lex.c, | |
2216 | lex.h, mangle.c, mangle_name.c, | |
2217 | parse-scan.y, parse.h, parse.y, | |
2218 | typeck.c, verify.c, xref.c, | |
2219 | xref.h: Replace "GNU CC" with | |
2220 | "GCC" in the copyright header. | |
2221 | ||
2222 | * check-init.c, gjavah.c, javaop.h, | |
2223 | jcf-depend.c, jcf-dump.c, jcf-io.c, | |
2224 | jcf-path.c, jcf-reader.c, jcf.h, | |
2225 | zextract.c, zipfile.h: These files are | |
2226 | "part of GCC". Also say "GCC" not "GNU CC". | |
2227 | ||
9a280a6e DD |
2228 | 2002-12-30 DJ Delorie <dj@redhat.com> |
2229 | ||
e2f45c30 | 2230 | * Make-lang.in: Protect against texi2pod/pod2man failing. |
9a280a6e | 2231 | |
bdefb2ab JM |
2232 | 2002-12-28 Joseph S. Myers <jsm@polyomino.org.uk> |
2233 | ||
2234 | * gcj.texi: Use @copying. | |
2235 | ||
239b7dea MM |
2236 | 2002-12-27 Mark Mitchell <mark@codesourcery.com> |
2237 | ||
2238 | * gjavah.c (print_name_for_stub_or_jni): Adjust call to | |
2239 | print_cxx_classname. | |
2240 | (print_cxx_classname): Add add_scope parameter. | |
2241 | (print_class_decls): Do not emit a semicolon after the extern | |
2242 | "Java" block. | |
43c6a96a | 2243 | (process_file): Adjust calls to print_cxx_classname. |
239b7dea | 2244 | |
df82908a JM |
2245 | 2002-12-23 Joseph S. Myers <jsm@polyomino.org.uk> |
2246 | ||
2247 | * gcj.texi: Include Cover Texts in man page. | |
2248 | ||
d3ab697b JS |
2249 | 2002-12-23 Jeff Sturm <jsturm@one-point.com> |
2250 | ||
2251 | * class.c (build_static_field_ref): Check FIELD_FINAL. | |
2252 | ||
2253 | * constants.c (alloc_class_constant): Use TYPE_CPOOL_DATA_REF | |
2254 | instead of current_constant_pool_data_ref. | |
2255 | * java-tree.h (current_constant_pool_data_ref): Undefine. | |
2256 | (JTI_CURRENT_CONSTANT_POOL_DATA_REF): Remove. | |
2257 | * jcf-parse.c (init_outgoing_cpool): Don't initialize | |
2258 | current_constant_pool_data_ref. | |
2259 | ||
2260 | * except.c (prepare_eh_table_type ): Use DECL_NAME of class type, | |
2261 | not build_internal_class_name. | |
2262 | ||
2263 | * parse.y (patch_incomplete_class_ref): Always emit `class$' method. | |
2264 | Use it when class ref isn't certain to be compiled. | |
2265 | ||
46d40353 JM |
2266 | 2002-12-23 Joseph S. Myers <jsm@polyomino.org.uk> |
2267 | ||
2268 | * gcj.texi: Include gcc-common.texi. | |
2269 | * Make-lang.in ($(srcdir)/java/gcj.info, java/gcj.dvi): Depend on | |
2270 | $(srcdir)/doc/include/gcc-common.texi. | |
2271 | ||
fba1caab AG |
2272 | 2002-12-22 Anthony Green <green@redhat.com> |
2273 | ||
2274 | * gcj.texi (Limitations): Add note about org.xml.sax and | |
2275 | org.w3c.dom. | |
2276 | ||
913746e3 TT |
2277 | 2002-12-20 Tom Tromey <tromey@redhat.com> |
2278 | ||
2279 | * jcf-write.c (generate_bytecode_insns) [SWITCH_EXPR]: Handle case | |
2280 | where minimum case value is Integer.MIN_VALUE. | |
2281 | Fixes PR java/8955. | |
2282 | ||
71d082af AH |
2283 | 2002-12-18 Andrew Haley <aph@redhat.com> |
2284 | ||
2285 | * parse.y (patch_invoke): Force evaluation order when `check' is | |
2286 | set. For PR libgcj/8945. | |
2287 | ||
7a04c51b MM |
2288 | 2002-12-16 Mark Mitchell <mark@codesourcery.com> |
2289 | ||
2290 | * gcj.texi: Change version number to 3.4. | |
2291 | ||
0cc1565a | 2292 | 2002-12-05 Ranjit Mathew <rmathew@hotmail.com> |
649eaf9b | 2293 | Andrew Haley <aph@redhat.com> |
0cc1565a RM |
2294 | |
2295 | * parse.y (source_end_java_method): Remove custom encoding of line | |
2296 | numbers for a function decl before passing it to the back end. | |
2297 | ||
421f9e60 AH |
2298 | 2002-12-03 Andrew Haley <aph@redhat.com> |
2299 | ||
2300 | * class.c (make_class_data): New field, "chain". | |
2301 | * decl.c (java_init_decl_processing): Likewise. | |
2302 | ||
6b55b27f TT |
2303 | 2002-12-02 Tom Tromey <tromey@redhat.com> |
2304 | ||
2305 | For PR java/8740: | |
2306 | * parse.y (do_resolve_class): Handle qualified name via | |
2307 | recursion. | |
2308 | ||
4977bab6 ZW |
2309 | 2002-11-30 Zack Weinberg <zack@codesourcery.com> |
2310 | ||
2311 | * boehm.c, buffer.c, builtins.c, check-init.c, class.c, | |
2312 | constants.c, decl.c, except.c, expr.c, gjavah.c, jcf-depend.c, | |
2313 | jcf-dump.c, jcf-io.c, jcf-parse.c, jcf-path.c, jcf-write.c, | |
2314 | jv-scan.c, jvgenmain.c, jvspec.c, lang.c, mangle.c, mangle_name.c, | |
2315 | parse-scan.y, parse.y, typeck.c, verify.c, xref.c, zextract.c: | |
2316 | Include coretypes.h and tm.h. | |
2317 | * Make-lang.in: Update dependencies. | |
2318 | ||
d1aed877 KG |
2319 | 2002-11-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2320 | ||
2321 | * decl.c (java_init_decl_processing): Use `LL' on 64-bit constant. | |
2322 | ||
b4bbc8b7 DN |
2323 | 2002-11-25 Diego Novillo <dnovillo@redhat.com> |
2324 | ||
2325 | * jcf-reader.c: Don't expand JCF_readu4 inside the | |
2326 | expansion of JCF_SKIP. | |
2327 | ||
4977bab6 ZW |
2328 | 2002-11-25 Diego Novillo <dnovillo@redhat.com> |
2329 | ||
2330 | * jcf-reader.c: Don't expand JCF_readu4 inside the | |
2331 | expansion of JCF_SKIP. | |
2332 | ||
dd06be9e TT |
2333 | 2002-11-22 Tom Tromey <tromey@redhat.com> |
2334 | ||
2335 | * parse.y (patch_binop): Cast right hand side of shift expression | |
2336 | to `int'. Fixes PR java/8676. | |
2337 | ||
34744d4e RM |
2338 | 2002-11-22 Ranjit Mathew <rmathew@hotmail.com> |
2339 | Andrew Haley <aph@redhat.com> | |
2340 | ||
2341 | * gcc/java/jcf-write.c (write_classfile): Remove target | |
2342 | class file, if it exists, before renaming the temporary | |
2343 | class file to it. | |
2344 | ||
f3226a90 JT |
2345 | 2002-11-19 Jason Thorpe <thorpej@wasabisystems.com> |
2346 | ||
2347 | * jvspec.c (lang_specific_spec_functions): New. | |
2348 | ||
5602b49d TT |
2349 | 2002-11-18 Tom Tromey <tromey@redhat.com> |
2350 | ||
2351 | Fix for PR java/7912: | |
2352 | * expr.c (can_widen_reference_to): Allow cast of array to | |
2353 | Cloneable or Serializable. | |
2354 | * java-tree.h (java_lang_cloneable_identifier_node): Declare. | |
2355 | (java_io_serializable_identifier_node): Likewise. | |
2356 | * parse.y (java_lang_cloneable, java_io_serializable): Removed. | |
2357 | (valid_ref_assignconv_cast_p): Use new identifier nodes. | |
2358 | * lex.c (java_init_lex): Don't initialize java_lang_cloneable and | |
2359 | java_io_serializable. | |
2360 | * decl.c (java_init_decl_processing): Initialize | |
2361 | java_lang_cloneable_identifier_node and | |
2362 | java_io_serializable_identifier_node. | |
2363 | (java_lang_cloneable_identifier_node): New global. | |
2364 | (java_io_serializable_identifier_node): Likewise. | |
2365 | ||
a92cb0c3 JMH |
2366 | 2002-11-14 Jens-Michael Hoffmann <jensmh@gmx.de> |
2367 | ||
2368 | * buffer.c: Remove unnecessary casts. | |
2369 | * check-init.c: Likewise. | |
2370 | * class.c: Likewise. | |
2371 | * constants.c: Likewise. | |
2372 | * decl.c: Likewise. | |
2373 | * except.c: Likewise. | |
2374 | * gjavah.c: Likewise. | |
2375 | * jcf-io.c: Likewise. | |
2376 | * jcf-parse.c: Likewise. | |
2377 | * jcf-path.c: Likewise. | |
2378 | * jvspec.c: Likewise. | |
2379 | * lang.c: Likewise. | |
2380 | * lex.c: Likewise. | |
2381 | * verify.c: Likewise. | |
2382 | ||
5bd717f1 TT |
2383 | 2002-11-06 Tom Tromey <tromey@redhat.com> |
2384 | ||
2385 | * gjavah.c (print_stub_or_jni): Include JNIEXPORT and JNICALL in | |
2386 | a JNI header. | |
2387 | ||
c034b453 TT |
2388 | 2002-11-05 Tom Tromey <tromey@redhat.com> |
2389 | ||
2390 | Fix for PR java/6388. | |
2391 | * lex.h (JAVA_INTEGRAL_RANGE_ERROR): Wrap in do...while. | |
2392 | * java-tree.h (enum java_tree_index): New values | |
2393 | JTI_DECIMAL_INT_MAX_NODE, JTI_DECIMAL_LONG_MAX_NODE. | |
2394 | (decimal_int_max, decimal_long_max): New defines. | |
2395 | * lex.c (yylex): Rewrote range checking. Sign extend literals. | |
2396 | (error_if_numeric_overflow): Rewrote range checking. | |
2397 | * decl.c (java_init_decl_processing): Initialize decimal_int_max, | |
2398 | decimal_long_max. | |
2399 | ||
21140beb TT |
2400 | 2002-11-02 Tom Tromey <tromey@redhat.com> |
2401 | ||
60b68525 TT |
2402 | * java-tree.h: Move JV_STATE_ERROR before JV_STATE_DONE. |
2403 | ||
21140beb TT |
2404 | * class.c (make_method_value): Put class name, not signature, into |
2405 | `throws' field. For PR java/8415. | |
2406 | ||
3752ac08 TT |
2407 | 2002-10-24 Tom Tromey <tromey@redhat.com> |
2408 | ||
2409 | * gcj.texi (Invoking gij): Document --showversion. | |
2410 | (Standard Properties): java.library.path now set. | |
2411 | ||
0d3911c9 TT |
2412 | 2002-10-23 Tom Tromey <tromey@redhat.com> |
2413 | ||
2414 | * gjavah.c (decode_signature_piece): In JNI mode, print | |
2415 | `jobjectArray' when array depth is nonzero. | |
2416 | Fixes PR java/8296. | |
2417 | ||
c1ddb5c8 AH |
2418 | 2002-10-15 Andrew Haley <aph@redhat.com> |
2419 | ||
2420 | * parse.y (patch_invoke): Call force_evaluation_order on a static | |
2421 | arg list. | |
2422 | (resolve_qualified_expression_name): Call force_evaluation_order | |
2423 | on a arg list that is part of a Qualified Expression Name. | |
2424 | ||
2425 | * lang.c (dump_compound_expr): New. | |
2426 | (java_dump_tree): New. | |
2427 | ||
63bb20d4 RM |
2428 | 2002-10-20 Ranjit Mathew <rmathew@hotmail.com> |
2429 | ||
2430 | * gcj.texi: Added item describing the GCJ runtime property | |
2431 | "gnu.gcj.progname". | |
2432 | ||
ba0bb02d RH |
2433 | 2002-10-15 Richard Henderson <rth@redhat.com> |
2434 | ||
2435 | * jcf-parse.c (get_constant): Fix type warning. | |
2436 | ||
dbd1e2d8 AH |
2437 | 2002-10-15 Andrew Haley <aph@redhat.com> |
2438 | ||
2439 | * java-tree.h (java_inlining_merge_static_initializers): Declare. | |
2440 | (java_inlining_map_static_initializers): Declare. | |
2441 | ||
3eb429b2 AH |
2442 | 2002-10-14 Andrew Haley <aph@redhat.com> |
2443 | ||
2444 | * tree-inline.c (remap_block): All local class initialization | |
2445 | flags go in the outermost scope. | |
2446 | (expand_call_inline): Call java_inlining_map_static_initializers. | |
2447 | (expand_call_inline): Call java_inlining_merge_static_initializers. | |
2448 | * java/lang.c (merge_init_test_initialization): New. | |
2449 | (java_inlining_merge_static_initializers): New. | |
2450 | (inline_init_test_initialization): New. | |
2451 | (java_inlining_map_static_initializers): New. | |
2452 | ||
37d2b7e2 MW |
2453 | 2002-10-11 Mark Wielaard <mark@klomp.org> |
2454 | ||
2455 | * gcj.texi (Compatibility): Add Limitations and Extensions section. | |
2456 | ||
7bdfd72e KG |
2457 | 2002-10-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2458 | ||
2459 | * class.c (JAVA_TREEHASHHASH_H): Use htab_hash_pointer. | |
2460 | ||
c6449a1d KG |
2461 | 2002-10-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2462 | ||
2463 | * parse.y (merge_string_cste): Add parentheses around & within |. | |
2464 | ||
8f6d2e96 TT |
2465 | 2002-10-08 Tom Tromey <tromey@redhat.com> |
2466 | ||
2467 | * parse.y (variable_declarator_id): Simplify error path for | |
2468 | array declarator error. For PR java/8003. | |
2469 | ||
36624850 ZW |
2470 | 2002-10-08 Zack Weinberg <zack@codesourcery.com> |
2471 | ||
2472 | * gjavah.c, jcf-dump.c, jv-scan.c: Globally replace GCCBUGURL with | |
2473 | bug_report_url. | |
2474 | ||
ce5bb293 AH |
2475 | 2002-10-08 Andrew Haley <aph@redhat.com> |
2476 | ||
2477 | * parse.y (attach_init_test_initialization_flags): Check for | |
2478 | error_mark_node. | |
2479 | ||
36624850 | 2480 | 2002-10-07 Anthony Green <green@redhat.com> |
6a921942 | 2481 | |
36624850 | 2482 | * parse.y (merge_string_cste): Fix bug in string concatenation. |
6a921942 | 2483 | |
f42ee52f MK |
2484 | 2002-10-03 Michael Koch <konqueror@gmx.de> |
2485 | ||
2486 | * gcj.texi (Standard properties): | |
2487 | Change default of java.awt.toolkit to gnu.awt.gtk.GtkToolkit. | |
2488 | ||
f963b5d9 RS |
2489 | 2002-10-02 Roger Sayle <roger@eyesopen.com> |
2490 | ||
2491 | PR optimization/6627 | |
2492 | * lang.c (java_init): If storing the vbit in function | |
2493 | pointers, ensure that force_align_functions_log is atleast | |
2494 | one to aid compatability with g++ vtables. | |
2495 | ||
6f7e9e94 NS |
2496 | 2002-10-01 Nathan Sidwell <nathan@codesourcery.com> |
2497 | ||
2498 | * jcf-dump.c (print_constant, case CONSTANT_float): Don't fall | |
2499 | foul of type-based aliasing. | |
2500 | ||
71dff728 AG |
2501 | 2002-09-30 Anthony Green <green@redhat.com> |
2502 | ||
2503 | * gcj.texi (Invoking jv-scan): Fix texinfo. | |
2504 | ||
acc59b85 AG |
2505 | 2002-09-28 Anthony Green <green@redhat.com> |
2506 | ||
2507 | * gcj.texi (Invoking jv-scan): Add --no-assert documentation. | |
2508 | (Code Generation): Add -fno-assert documentation. | |
2509 | * jv-scan.c (flag_assert): New global. | |
2510 | (options): Add assert option. | |
2511 | (help): Add --no-assert documentation. | |
2512 | * parse-scan.y (flag_assert): New global. | |
2513 | * lang.c (lang_f_options): Add -fassert/-fno-assert support. | |
2514 | (flag_assert): New global. | |
2515 | * java-tree.h (flag_assert): New global. | |
2516 | * lex.c (java_lex): Obey flag_assert. | |
2517 | * jvspec.c (jvgenmain_spec): Strip -fassert/-fno-assert when | |
2518 | calling cc1. | |
2519 | ||
fc5295fa AH |
2520 | 2002-09-26 Andrew Haley <aph@redhat.com> |
2521 | ||
2522 | * expr.c (build_java_array_length_access): Check for null pointer. | |
2523 | * expr.c (expand_java_arrayload): Likewise. | |
2524 | ||
aa2046c4 RH |
2525 | 2002-09-21 Richard Henderson <rth@redhat.com> |
2526 | ||
36624850 | 2527 | * jcf-parse.c (get_constant): Decode from IEEE no matter |
aa2046c4 RH |
2528 | what the target format. |
2529 | ||
ee142fe7 KH |
2530 | 2002-09-20 Kazu Hirata <kazu@cs.umass.edu> |
2531 | ||
2532 | * ChangeLog: Follow spelling conventions. | |
2533 | * class.c: Likewise. | |
2534 | * decl.c: Likewise. | |
2535 | * expr.c: Likewise. | |
2536 | * gjavah.c: Likewise. | |
2537 | * java-tree.h: Likewise. | |
2538 | * jcf-dump.c: Likewise. | |
2539 | * jcf-parse.c: Likewise. | |
2540 | * jvspec.c: Likewise. | |
2541 | * lang.c: Likewise. | |
2542 | * mangle.c: Likewise. | |
2543 | * parse.y: Likewise. | |
2544 | ||
6a022513 TT |
2545 | 2002-09-17 Tom Tromey <tromey@redhat.com> |
2546 | ||
2547 | * lex.c (java_read_unicode_collapsing_terminators): Handle case | |
2548 | where \r appears at EOF. Fixes PR java/7950. | |
2549 | ||
4977bab6 ZW |
2550 | 2002-09-16 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
2551 | ||
2552 | * jvspec.c (lang_specific_driver): Remove unused variable. | |
2553 | ||
36a5eadd GK |
2554 | 2002-09-16 Geoffrey Keating <geoffk@apple.com> |
2555 | ||
2556 | * java-tree.h (union lang_tree_node): Add chain_next option. | |
2557 | ||
efdc7e19 RH |
2558 | 2002-09-16 Richard Henderson <rth@redhat.com> |
2559 | ||
2560 | * jcf-parse.c (get_constant): Runtime check for IEEE format; | |
2561 | use new real.h interface. | |
2562 | * jcf-write.c (find_constant_index): Use new real.h interface. | |
2563 | * lex.c (IS_ZERO): Use REAL_VALUES_EQUAL. | |
2564 | ||
6522685d KH |
2565 | 2002-09-15 Kazu Hirata <kazu@cs.umass.edu> |
2566 | ||
25facd31 | 2567 | * lang.c: Follow spelling conventions. |
6522685d | 2568 | |
6e471ea7 PB |
2569 | 2002-09-11 Per Bothner <per@bothner.com> |
2570 | ||
2571 | * parse.y (fold_constant_for_init): If a VAR_DECL, convert numerical | |
2572 | constant to the type of the field. | |
2573 | (java_complete_tree): Remove now-redundant code. | |
2574 | ||
2575 | * parse.y (fold_constant_for_init): 'null' is not a constant expr. | |
2576 | ||
23114b69 JR |
2577 | 2002-09-03 Jesse Rosenstock <jmr@ugcs.caltech.edu> |
2578 | ||
2579 | For PR java/5794: | |
2580 | * verify.c (verify_jvm_instructions) [OPCODE_jsr]: Only push the | |
2581 | return label if a ret instruction for the jsr has been reached. | |
2582 | ||
f724acb8 RM |
2583 | 2002-09-09 Ranjit Mathew <rmathew@hotmail.com> |
2584 | ||
2585 | * parse.y (DIR_SEPARATOR): Don't define. | |
2586 | (check_class_interface_creation): Use IS_DIR_SEPARATOR. | |
2587 | ||
b139fcfd AH |
2588 | 2002-08-28 Andrew Haley <aph@redhat.com> |
2589 | ||
2590 | * verify.c (verify_jvm_instructions): Allow exception handler | |
2591 | inside code that is being protected, but generate a warning. | |
2592 | * except.c (link_handler): Initialize `expanded' in new eh_range. | |
2593 | (binding_depth, is_class_level, current_pc): Declare extern. | |
2594 | ||
f60518c8 MW |
2595 | 2002-09-01 Mark Wielaard <mark@klomp.org> |
2596 | ||
2597 | * gcj.texi: Add chapter about system properties. | |
2598 | Fixed some typos. | |
2599 | ||
83dd5fae TT |
2600 | 2002-08-26 Tom Tromey <tromey@redhat.com> |
2601 | ||
2602 | * parse.y (try_builtin_assignconv): Allow narrowing primitive | |
2603 | conversion if RHS_TYPE is byte, short, or char. | |
2604 | ||
00a8b314 TT |
2605 | 2002-08-22 Tom Tromey <tromey@redhat.com> |
2606 | ||
2607 | * gcj.texi (Invoking gij): Document -cp and -classpath. | |
2608 | ||
0d811e1a TT |
2609 | 2002-08-21 Tom Tromey <tromey@redhat.com> |
2610 | ||
79a3cb18 TT |
2611 | * Make-lang.in (java/jcf-path.o): Use $(datadir), not |
2612 | $(prefix)/share. For PR libgcj/7633. | |
2613 | ||
0d811e1a TT |
2614 | For PR java/6005 and PR java/7611: |
2615 | * lang.c (LANG_HOOKS_CAN_USE_BITFIELDS_P): New define. | |
2616 | (java_can_use_bit_fields_p): New function. | |
2617 | ||
ca75573a TT |
2618 | 2002-08-16 Tom Tromey <tromey@redhat.com> |
2619 | ||
2620 | * gcj.texi (Class Initialization): Mention class initialization of | |
2621 | arrays. | |
2622 | ||
7149627b AH |
2623 | 2002-07-30 Andrew Haley <aph@cambridge.redhat.com> |
2624 | ||
2625 | * Make-lang.in (java-tree-inline.o): New. | |
2626 | (JAVA_OBJS): Add java-tree-inline.o. | |
2627 | * parse.y (source_end_java_method): Call java_optimize_inline. | |
2628 | (java_expand_method_bodies): Save method's tree in | |
2629 | DECL_SAVED_TREE. | |
2630 | (add_stmt_to_compound): Keep track of the number of statments. | |
2631 | * lang.c (java_init): Enable flag_inline_trees. | |
2632 | (java_post_options): If flag_inline_functions is on, enable | |
2633 | flag_inline_trees instread. | |
2634 | (decl_constant_value): New. | |
2635 | (java_tree_inlining_walk_subtrees): New. | |
2636 | * java-tree.h (DECL_NUM_STMTS): New macro. | |
2637 | (java_optimize_inline): Declare. | |
2638 | * expr.c (java_expand_expr): Allow a BLOCK to return a value. | |
2639 | Handle a LABEL_EXPR. | |
2640 | * decl.c (build_result_decl): If we already have a DECL_RESULT | |
2641 | don't make another. | |
2642 | (dump_function): New. | |
2643 | (java_optimize_inline): New. | |
2644 | (dump_function): New. | |
2645 | ||
ee1884cb JR |
2646 | 2002-08-13 Jesse Rosenstock <jmr@fulcrummicro.com> |
2647 | ||
2648 | For PR java/7483: | |
2649 | * parse.y (build_assertion): Invert return from | |
2650 | desiredAssertionStatus. | |
2651 | ||
097684ce BM |
2652 | 2002-08-08 Bryce McKinlay <bryce@waitaki.otago.ac.nz> |
2653 | ||
36624850 | 2654 | * jcf-write.c (get_access_flags): Return correct access flags for |
097684ce BM |
2655 | private and protected inner classes. |
2656 | ||
22aa533e NS |
2657 | 2002-08-08 Nathan Sidwell <nathan@codesourcery.com> |
2658 | ||
2659 | * java/Make-lang.in (java.mostlyclean): Remove coverage files. | |
2660 | ||
b3426eb9 GK |
2661 | 2002-08-05 Geoffrey Keating <geoffk@redhat.com> |
2662 | ||
2663 | * mangle_name.c: Don't include obstack.h twice. | |
2664 | * xref.c: Don't include obstack.h. | |
2665 | ||
6d9f628e GK |
2666 | 2002-08-04 Geoffrey Keating <geoffk@redhat.com> |
2667 | ||
2668 | * class.c: (permanent_obstack): Delete declaration. | |
2669 | * constants.c: (permanent_obstack): Delete declaration. | |
2670 | * except.c: (permanent_obstack): Delete declaration. | |
2671 | * expr.c: (permanent_obstack): Delete declaration. | |
2672 | * jcf-parse.c: (permanent_obstack): Delete declaration. | |
2673 | (saveable_obstack): Delete declaration. | |
2674 | * parse.h: (permanent_obstack): Delete declaration. | |
2675 | * typeck.c: (permanent_obstack): Delete declaration. | |
2676 | ||
d500c5d7 JM |
2677 | 2002-08-04 Joseph S. Myers <jsm@polyomino.org.uk> |
2678 | ||
2679 | * gcj.texi (version-gcc): Increase to 3.3. | |
2680 | ||
e75abdab TT |
2681 | 2002-07-22 Tom Tromey <tromey@redhat.com> |
2682 | ||
2683 | * lex.c (java_lex): Check for `e' or `E' after 0. | |
2684 | ||
8943a0b4 RH |
2685 | 2002-07-21 Richard Henderson <rth@redhat.com> |
2686 | ||
2687 | * lang.c (java_unsafe_for_reeval): New. | |
2688 | (LANG_HOOKS_UNSAFE_FOR_REEVAL): New. | |
2689 | ||
2f8dd115 NB |
2690 | 2002-07-21 Neil Booth <neil@daikokuya.co.uk> |
2691 | ||
2692 | * jcf-path.c (GET_ENV_PATH_LIST): Remove. | |
2693 | (jcf_path_init): Use GET_ENVIRONMENT. | |
2694 | ||
c5358a5d RS |
2695 | 2002-07-10 Roger Sayle <roger@eyesopen.com> |
2696 | Zack Weinberg <zack@codesourcery.com> | |
2697 | ||
2698 | * builtins.c (initialize_builtins): Remove defines that | |
2699 | handled C/C++ specific junk hereby removed from builtins.def. | |
2700 | ||
5351f1ca NB |
2701 | 2002-07-07 Neil Booth <neil@daikokuya.co.uk> |
2702 | ||
2703 | * lang.c (java_post_options): Update prototype. | |
2704 | ||
df061a43 RS |
2705 | 2002-07-05 Roger Sayle <roger@eyesopen.com> |
2706 | ||
c5358a5d | 2707 | * builtins.c (initialize_builtins): Ignore the additional |
df061a43 RS |
2708 | parameter to DEF_BUILTIN. Handle more C/C++ specific junk in |
2709 | the builtins.def file. | |
2710 | ||
68a830fe TT |
2711 | 2002-07-01 Tom Tromey <tromey@redhat.com> |
2712 | ||
2713 | For PR libgcj/7073: | |
2714 | * parse.y (patch_incomplete_class_ref): Handle VOID_TYPE | |
2715 | specially. | |
2716 | ||
6a2dd09a RS |
2717 | 2002-07-01 Roger Sayle <roger@eyesopen.com> |
2718 | ||
2719 | * java/decl.c (builtin_function): Accept additional parameter. | |
2720 | (java_init_decl_processing): Pass an additional NULL_TREE | |
2721 | argument to builtin_function. | |
2722 | ||
32c4621e M |
2723 | 2002-06-29 T.J. Mather <tjmather@maxmind.com> |
2724 | ||
2725 | * gcj.texi: Fixed gcj invocation example so that it compiles. | |
2726 | ||
bd466c7b KG |
2727 | 2002-06-26 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2728 | ||
57ddd19c KG |
2729 | * lex.c (java_init_lex): Avoid incorrect hardcoded constant 11. |
2730 | * parse.y (mark_parser_ctxt): Likewise. | |
33780b45 KG |
2731 | (check_modifiers, declare_local_variables): Avoid incorrect |
2732 | hardcoded constant 10. | |
57ddd19c | 2733 | |
bd466c7b KG |
2734 | * lex.c (java_read_char): Avoid "comparison is always true" |
2735 | warning. | |
2736 | ||
b6532e57 AS |
2737 | 2002-06-25 Andreas Schwab <schwab@suse.de> |
2738 | ||
2739 | * expr.c (JSR): Avoid undefined operation on PC. | |
2740 | ||
eb6b51b9 KG |
2741 | 2002-06-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2742 | ||
2743 | * decl.c (clear_binding_level): Const-ify. | |
2744 | ||
6d61f1bd AD |
2745 | 2002-06-13 Akim Demaille <akim@epita.fr> |
2746 | ||
2747 | * parse.y (class_declaration, interface_declaration): Make sure | |
2748 | all their rules have an action, in order to avoid meaningless `$$ | |
2749 | = $1' and their type clashes. | |
2750 | ||
c6226a7e TT |
2751 | 2002-06-11 Tom Tromey <tromey@redhat.com> |
2752 | ||
2753 | * jcf-write.c (generate_classfile): Use FIELD_SYNTHETIC. | |
2754 | * parse-scan.y (statement_without_trailing_substatement): Added | |
2755 | assert_statement. | |
2756 | (assert_statement): New rule. | |
2757 | * java-tree.h (struct lang_type) [assertions]: New field. | |
2758 | (TYPE_USES_ASSERTIONS): New macro. | |
2759 | (CLASS_USES_ASSERTIONS): Likewise. | |
2760 | (FIELD_SYNTHETIC): New define. | |
2761 | * lex.c (java_lval;): Added ASSERT_TK. | |
2762 | * parse.y (ASSERT_TK): Added. | |
2763 | (statement_without_trailing_substatement): Added assert_statement. | |
2764 | (assert_statement): New rule. | |
2765 | (build_assertion): New function. | |
2766 | (maybe_generate_pre_expand_clinit): Create and initialize | |
2767 | $assertionsDisabled. | |
2768 | (lookup_package_type): Removed decl. | |
2769 | * keyword.h: Rebuilt. | |
2770 | * keyword.gperf (assert): New token. | |
2771 | ||
e35b68b0 AD |
2772 | 2002-06-10 Akim Demaille <akim@epita.fr> |
2773 | ||
2774 | * parse.y (interface_type_list, class_member_declaration) | |
2775 | (unary_expression_not_plus_minus): Remove duplicate %type. | |
2776 | Whitespace changes. | |
2777 | ||
950ac1d3 TT |
2778 | 2002-06-09 Tom Tromey <tromey@redhat.com> |
2779 | ||
ac57655a TT |
2780 | * Make-lang.in (java/lang.o): Use LANGHOOKS_DEF_H. |
2781 | ||
950ac1d3 TT |
2782 | * parse.y (method_header): Give error message in all cases. |
2783 | Fixes PR java/6865. | |
2784 | ||
36d010ca BM |
2785 | 2002-06-10 Bryce McKinlay <bryce@waitaki.otago.ac.nz> |
2786 | ||
2787 | Don't use RTL inlining. Fix for PR java/6820. | |
2788 | * lang.c (LANG_HOOKS_POST_OPTIONS): Define. | |
2789 | (flag_really_inline): New. | |
2790 | (java_decode_option): Set flag_really_inline if -finline-functions | |
2791 | is seen. | |
2792 | (java_post_options): New function. Turn off inlining unless | |
2793 | flag_really_inline is set. | |
2794 | ||
64e68197 BM |
2795 | 2002-06-10 Bryce McKinlay <bryce@waitaki.otago.ac.nz> |
2796 | ||
36624850 | 2797 | * gjavah.c (throwable_p): Accept argument as either a classname or |
64e68197 BM |
2798 | signature fragment. Create null-terminated classname string for super |
2799 | when calling itself recursively. | |
36624850 | 2800 | (decode_signature_piece): Skip first character from class name |
64e68197 BM |
2801 | signature when calling throwable_p. |
2802 | ||
c238d806 L |
2803 | 2002-06-08 H.J. Lu (hjl@gnu.org) |
2804 | ||
2805 | * jcf-path.c (jcf_path_init): Allocate 1 more byte for string. | |
2806 | ||
f06cafdf TT |
2807 | 2002-06-04 Tom Tromey <tromey@redhat.com> |
2808 | ||
2809 | * jcf-write.c (perform_relocations): Optmize a goto to a goto. | |
2810 | ||
0bb5f0e4 MK |
2811 | 2002-06-04 Michael Koch <konqueror@gmx.de> |
2812 | ||
2813 | * gcj.texi (Input Options): Fixed typo. | |
2814 | ||
c02ebb18 ZW |
2815 | 2002-06-04 Zack Weinberg <zack@codesourcery.com> |
2816 | ||
2817 | * java-tree.h, class.c, expr.c, jcf-parse.c, parse.y, | |
2818 | typeck.c, verify.c: Remove all #if JAVA_USE_HANDLES blocks, | |
2819 | all mention of CLASS_TO_HANDLE_TYPE or HANDLE_TO_CLASS_TYPE, | |
2820 | and all now-pointless local variables. Rename other local | |
2821 | variables to reflect their not being handles. | |
2822 | ||
2823 | * java-tree.h, jcf-dump.c, jcf-io.c: Remove all | |
2824 | #if JCF_USE_STDIO blocks. | |
2825 | ||
2826 | * parse.y: Add missing semicolon at end of rule. | |
2827 | ||
e2500fed GK |
2828 | 2002-06-03 Geoffrey Keating <geoffk@redhat.com> |
2829 | ||
2830 | * check-init.c (attach_initialized_static_class): Delete, unused. | |
2831 | * parse.y: Use htab_t instead of struct hashtable, update | |
2832 | all uses. | |
2833 | * java-tree.h: Include hashtab.h instead of hash.h. | |
2834 | (struct lang_decl_func): Use htab_t, set up for gengtype. | |
2835 | (struct init_test_hash_entry): Delete. | |
2836 | (struct treetreehash_entry): New. | |
c02ebb18 | 2837 | (java_treetreehash_find): New |
e2500fed GK |
2838 | (java_treetreehash_new): New prototype. |
2839 | (java_treetreehash_create): New prototype. | |
2840 | (java_mark_tree): Delete prototype. | |
2841 | (java_hash_hash_tree_node): Delete prototype. | |
2842 | (java_hash_compare_tree_node): Delete prototype. | |
2843 | (attach_initialized_static_class): Delete prototype. | |
2844 | * expr.c (build_class_init): Update to use java_treetreehash | |
2845 | functions. | |
2846 | (java_expand_expr): Update to use htab_t. | |
2847 | (emit_init_test_initialization): Likewise. | |
2848 | * decl.c (java_mark_tree): Delete. | |
2849 | * class.c (init_test_hash_newfunc): Delete. | |
2850 | (java_hash_hash_tree_node): Delete. | |
2851 | (java_hash_compare_tree_node): Delete. | |
2852 | (add_method_1): Update to use java_treetreehash functions. | |
2853 | (JAVA_TREEHASHHASH_H): New macro. | |
2854 | (java_treetreehash_hash): New function. | |
2855 | (java_treetreehash_compare): New function. | |
2856 | (java_treetreehash_find): New function. | |
2857 | (java_treetreehash_new): New function. | |
2858 | (java_treetreehash_create): New function. | |
2859 | * Make-lang.in (JAVA_TREE_H): Replace hash.h by HASHTAB_H. | |
2860 | ||
2861 | * Make-lang.in (java/parse.o): Depend on debug.h. | |
2862 | * java-tree.h (struct lang_identifier): Use gengtype. | |
2863 | (union lang_tree_node): New. | |
2864 | (struct lang_decl_func): Use gengtype. | |
2865 | (struct lang_decl_var): Likewise. | |
2866 | (struct lang_decl): Likewise. | |
2867 | * parse.y: Include debug.h. | |
2868 | * lang.c (LANG_HOOKS_MARK_TREE): Delete. | |
2869 | ||
2870 | * lang.c (struct language_function): New dummy structure. | |
2871 | ||
2872 | * java-tree.h (MAYBE_CREATE_VAR_LANG_DECL_SPECIFIC): Set | |
2873 | descriminator for DECL_LANG_SPECIFIC. | |
2874 | (struct lang_decl_func): Rename from struct lang_decl. | |
2875 | (enum lang_decl_desc): New. | |
2876 | (struct lang_decl): Make it a union. Update all the accessor macros. | |
2877 | (struct lang_type): Use gengtype. | |
2878 | * class.c (add_method_1): Set descriminator for DECL_LANG_SPECIFIC. | |
2879 | * decl.c (java_dup_lang_specific_decl): All lang_decl structures | |
2880 | are now the same size. | |
2881 | (lang_mark_tree): Use gengtype to mark TYPE_LANG_SPECIFIC; | |
2882 | use discriminator to mark DECL_LANG_SPECIFIC. | |
2883 | ||
2884 | * Make-lang.in (gt-java-builtins.h): New rule. | |
2885 | (java/builtins.o): Add dependency on gt-<filename>.h. | |
2886 | * builtins.c: Use gengtype for roots. | |
2887 | (union string_or_tree): Use gengtype. | |
2888 | (struct builtin_record): Use gengtype. | |
2889 | * config-lang.in (gtfiles): Add builtins.c. | |
2890 | ||
2891 | * Make-lang.in (gt-java-class.h, gt-java-constants.h, | |
2892 | gt-java-decl.h, gt-java-expr.h, gt-java-jcf-parse.h, | |
2893 | gt-java-jcf-write.h, gt-java-lang.h, gt-java-mangle.h, | |
2894 | gt-java-parse.h, gtype-java.h): Add rules to generate. | |
2895 | (parse.o): Add dependency on gt-java-parse.h, gt-java.h. | |
2896 | (class.o): Add dependency on gt-*.h. | |
2897 | (constants.o): Likewise. | |
2898 | (decl.o): Likewise. | |
2899 | (expr.o): Likewise. | |
2900 | (jcf-parse.o): Likewise. | |
2901 | (jcf-write.o): Likewise. | |
2902 | (lang.o): Likewise. | |
2903 | * config-lang.in (gtfiles): New. | |
2904 | * class.c: Replace uses of ggc_add_* with GTY markers. Include gt-*.h. | |
2905 | * constants.c: Replace uses of ggc_add_* with GTY markers. | |
2906 | Include gt-*.h. | |
2907 | * decl.c: Replace uses of ggc_add_* with GTY markers. Include gt-*.h. | |
2908 | * expr.c: Replace uses of ggc_add_* with GTY markers. Include gt-*.h. | |
2909 | * java-tree.h: Replace uses of ggc_add_* with GTY markers. | |
2910 | * jcf-parse.c: Replace uses of ggc_add_* with GTY markers. | |
2911 | Include gt-*.h. | |
2912 | * jcf-write.c: Replace uses of ggc_add_* with GTY markers. | |
2913 | Include gt-*.h. | |
2914 | * lang.c: Replace uses of ggc_add_* with GTY markers. Include gt-*.h. | |
2915 | * mangle.c: Replace uses of ggc_add_* with GTY markers. Include | |
2916 | gt-*.h. | |
2917 | * parse.y: Replace uses of ggc_add_* with GTY markers. Include gt-*.h. | |
2918 | Include gtype-java.h. | |
2919 | ||
c442c002 TT |
2920 | 2002-06-02 Tom Tromey <tromey@redhat.com> |
2921 | ||
2922 | Fix for PR java/5913: | |
2923 | * parse.y (patch_binop): Call patch_string on op1. | |
2924 | ||
48711f4d TT |
2925 | 2002-06-02 Tom Tromey <tromey@redhat.com> |
2926 | ||
2927 | Fix for PR java/1343, PR java/6336: | |
2928 | * parse.y (make_nested_class_name): Remove extraneous `else'; fix | |
2929 | formatting. Changed return type. | |
2930 | (anonymous_class_counter): Moved to top of file. | |
2931 | (maybe_make_nested_class_name): Append number to class name for | |
2932 | function-local classes. | |
2933 | ||
11ad4784 ZW |
2934 | 2002-05-28 Zack Weinberg <zack@codesourcery.com> |
2935 | ||
2936 | * decl.c, jcf-parse.c, parse.y, typeck.c: Include real.h. | |
2937 | * Make-lang.in: Update dependency lists. | |
2938 | ||
a15135c9 MM |
2939 | 2002-05-18 Mark Mitchell <mark@codesourcery.com> |
2940 | ||
2941 | * gjavah.c (throwable_p): Do not free the name of the class after | |
2942 | passing it to find_class. | |
2943 | * java-tree.h (CLASS_BEING_LAIDOUT): Remove duplicate definition. | |
2944 | * jcf-io.c (dirent.h): Include it. | |
2945 | (fnmatch.h): Likewise. | |
2946 | (compare_path): New function. | |
2947 | (java_or_class_file): Likewise. | |
2948 | (memoized_dirlist_entry): New type. | |
2949 | (memoized_dirlist_lookup_eq): New function. | |
2950 | (memoized_dirlists): New variable. | |
2951 | (caching_stat): New function. | |
2952 | (memoized_class_lookup_eq): New function. | |
2953 | (memoized_class_lookups): Likewise. | |
2954 | (find_class): Use memoized_class_lookups and caching_stat. | |
2955 | * jcf.h (JCF_USE_SCANDIR): Define. | |
2956 | * parse.y (java_expand_classes): Write the class files in reverse | |
2957 | order. | |
c02ebb18 | 2958 | |
1e6347d8 RO |
2959 | 2002-05-16 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> |
2960 | ||
2961 | * Make-lang.in: Allow for PWDCMD to override hardcoded pwd. | |
2962 | ||
2f9a2cd7 MM |
2963 | 2002-05-13 Mark Mitchell <mark@codesourcery.com> |
2964 | ||
2965 | * jcf-write.c (write_classfile): Unlink the temporary file if it | |
2966 | cannot be renamed. Use concat to build up the name of the | |
2967 | temporary file. | |
2968 | ||
281524f4 MM |
2969 | 2002-05-08 Mark Mitchell <mark@codesourcery.com> |
2970 | ||
c02ebb18 | 2971 | * jcf-write.c (write_classfile): Write the file to a |
281524f4 MM |
2972 | temporary file and then rename it. |
2973 | ||
6b9b5de2 TT |
2974 | 2002-05-07 Tom Tromey <tromey@redhat.com> |
2975 | ||
5643bb97 TT |
2976 | * gjavah.c (throwable_p): Use xstrdup, not strdup. |
2977 | ||
6b9b5de2 TT |
2978 | Fix for PR java/1200: |
2979 | * gjavah.c (throwable_p): New function. | |
2980 | (decode_signature_piece): Use it. A `WeakReference' isn't the | |
2981 | same as a `jweak'. | |
2982 | Include hashtab.h. | |
2983 | (gcjh_streq): New function. | |
2984 | ||
2c7e9098 AJ |
2985 | 2002-05-07 Andreas Jaeger <aj@suse.de> |
2986 | ||
c02ebb18 | 2987 | * parse.y (finish_for_loop): Fix if statement. |
2c7e9098 | 2988 | |
486e8c0c TT |
2989 | 2002-05-06 Tom Tromey <tromey@redhat.com> |
2990 | ||
2991 | Fix for PR java/5941: | |
2992 | * parse.y (finish_for_loop): Set SUPPRESS_UNREACHABLE_ERROR for | |
2993 | loop update expression. | |
2994 | (java_complete_lhs): Use SUPPRESS_UNREACHABLE_ERROR. | |
2995 | * java-tree.h (SUPPRESS_UNREACHABLE_ERROR): New macro. | |
2996 | ||
30b50f90 MW |
2997 | 2002-05-04 Mark Wielaard <mark@klomp.org> |
2998 | ||
2999 | For PR java/6519: | |
3000 | * parse.y (build_string_concatenation): Return just op1 only when op2 | |
3001 | is null and op1 is a STRING_CST, otherwise always construct a | |
3002 | StringBuffer. | |
3003 | ||
0a32c5ea TT |
3004 | 2002-04-27 Tom Tromey <tromey@redhat.com> |
3005 | ||
3006 | For PR java/6382: | |
3007 | * parse.y (string_convert_int_cst): New function. | |
3008 | (merge_string_cste): Use it. | |
3009 | ||
ff45c01e NB |
3010 | 2002-04-25 Neil Booth <neil@daikokuya.demon.co.uk> |
3011 | ||
3012 | * java-tree.h (java_parse_file): Update. | |
3013 | (java_set_yydebug): Remove. | |
3014 | * jcf-parse.c (yydebug): Remove. | |
3015 | (java_set_yydebug): Die. | |
3016 | (java_parse_file): Update. | |
3017 | * lang.c (LANG_HOOKS_SET_YYDEBUG): Remove. | |
3018 | ||
9127b2da TT |
3019 | 2002-04-24 Tom Tromey <tromey@redhat.com> |
3020 | ||
3021 | For PR java/6425: | |
3022 | * parse.y (qualify_ambiguous_name) [case CALL_EXPR]: Always choose | |
3023 | EXPR_WFL_QUALIFICATION of qual_wfl. | |
3024 | ||
67f0a6bf PB |
3025 | 2002-04-23 Per Bothner <per@bothner.com> |
3026 | ||
3027 | * expr.c (PRE_JSR): Call NOTE_LABEL for return address. | |
3028 | * java-tree.h (BCODE_RETURN_TARGET): Removed - never set. | |
3029 | (BCODE_TARGET): Remove BCODE_RETURN_TARGET. | |
3030 | ||
3d3707c1 TT |
3031 | 2002-04-23 Tom Tromey <tromey@redhat.com> |
3032 | ||
3033 | For PR java/6314: | |
3034 | * jvspec.c (lang_specific_driver): Use --resource, not -R. Also | |
3035 | recognize `-fcompile-resource='. | |
3036 | * gcj.texi (Invoking gcj): Use --resource, not -R. Expanded text | |
3037 | a bit. | |
3038 | ||
920f81e7 APB |
3039 | 2002-04-22 Alexandre Petit-Bianco <apbianco@redhat.com> |
3040 | ||
3041 | * jcf-parse.c: (yyparse): Don't prepend "./" to relative | |
3042 | paths. Fixes PR java/2791. | |
3043 | ||
a2761d68 AH |
3044 | 2002-04-19 Andrew Haley <aph@redhat.com> |
3045 | ||
c02ebb18 ZW |
3046 | * jcf-write.c (push_long_const): lo, hi: New variables. |
3047 | Use rshift_double to extract the high part of a 64-bit long. | |
3048 | Use WORD_TO_INT to extract the low part. | |
a2761d68 | 3049 | |
c02ebb18 ZW |
3050 | * jcf-parse.c (get_constant): CONSTANT_Integer: Use an unsigned |
3051 | HOST_WIDE_INT for num. Use JPOOL_UINT to get it. | |
3052 | CONSTANT_Double: Use JPOOL_UINT to get both halve of a double. | |
a2761d68 | 3053 | |
7a228918 NB |
3054 | 2002-04-18 Neil Booth <neil@daikokuya.demon.co.uk> |
3055 | ||
3056 | * typeck.c (incomplete_type_error): Remove. | |
3057 | ||
b798d8b6 BM |
3058 | 2002-04-18 Bryce McKinlay <bryce@waitaki.otago.ac.nz> |
3059 | ||
3060 | * class.c (make_class_data): Set DECL_ALIGN on static class data, | |
3061 | for hash synchronization. | |
3062 | * expr.c (java_expand_expr): Set DECL_ALIGN on static array objects. | |
3063 | * decl.c (java_init_decl_processing): Don't set TYPE_ALIGN for | |
3064 | class_type_node. | |
3065 | ||
1cde1d05 MW |
3066 | 2002-04-16 Mark Wielaard <mark@klomp.org> |
3067 | ||
3068 | * jcf-write.c (generate_bytecode_insns): Only write const_0 if not | |
3069 | negative zero. | |
3070 | ||
3020a7f5 BM |
3071 | 2002-04-16 Bryce McKinlay <bryce@waitaki.otago.ac.nz> |
3072 | ||
3073 | Fix for PR java/6294: | |
3074 | * parse.h (INNER_INTERFACE_MODIFIERS): Allow ACC_PRIVATE for inner | |
3075 | interfaces. | |
2c7e9098 | 3076 | |
10aa83c7 BM |
3077 | 2002-04-15 Bryce McKinlay <bryce@waitaki.otago.ac.nz> |
3078 | ||
3079 | Fix for PR java/6085: | |
3080 | * parse.y (patch_method_invocation): Always use build_access_to_thisn | |
3081 | to get enclosing "this" argument for inner-class constructor | |
3082 | invocation. Pass correct arguments to build_access_to_thisn. | |
3083 | ||
9fef1fe3 AG |
3084 | 2002-04-10 Andreas Jaeger <aj@suse.de> |
3085 | ||
3086 | * gcj.texi (Input Options): Fix extdirs patch. | |
3087 | ||
3088 | 2002-04-10 Anthony Green <green@redhat.com> | |
3089 | ||
3090 | * jcf-path.c (jcf_path_init) : Clean up local extdirs declaration. | |
3091 | ||
3092 | 2002-04-09 Anthony Green <green@redhat.com> | |
3093 | ||
3094 | * gcj.texi (Input Options): Add --extdirs documentation. | |
3095 | * jcf-dump.c (OPT_extdirs): New macro. | |
3096 | (options): Add extdirs option. | |
3097 | (help): Describe --extdirs. | |
3098 | (main): Handle OPT_extdirs. | |
3099 | * gjavah.c (OPT_extdirs): New macro. | |
3100 | (options): Add extdirs option. | |
3101 | (help): Describe --extdirs. | |
3102 | (main): Handle OPT_extdirs. | |
3103 | * jcf-path.c (jcf_path_init): Add extdirs support. | |
3104 | (jcf_path_extdirs_arg): New function. | |
3105 | (extensions): New variable to hold extensions path entries. | |
3106 | * jvspec.c: Remove -fextdirs= when compiling main(). | |
3107 | * lang.c (java_decode_option): Handle -fextdirs=. | |
3108 | * jcf.h (jcf_path_extdirs_arg): Declare new function. | |
3109 | * Make-lang.in: Compile jcf-path with version info for use in | |
3110 | identifying the appropriate libgcj.jar. | |
3111 | ||
66133721 TT |
3112 | 2002-04-08 Tom Tromey <tromey@redhat.com> |
3113 | ||
3114 | For PR libgcj/5303: | |
3115 | * .cvsignore: Added rmic.1 and rmiregistry.1. | |
3116 | * gcj.texi (Top): Link to new nodes. | |
3117 | (Invoking rmic): New node. | |
3118 | (Invoking rmiregistry): Likewise. | |
3119 | * Make-lang.in (java.generated-manpages): Added rmic.1 and | |
3120 | rmiregistry.1. | |
3121 | (java.maintainer-clean): Likewise. | |
3122 | ($(srcdir)/java/rmic.1): New target. | |
3123 | ($(srcdir)/java/rmiregistry.1): Likewise. | |
3124 | (java.install-man): Handle rmic.1 and rmiregistry.1. | |
3125 | ||
00b224f8 BM |
3126 | 2002-04-08 Bryce McKinlay <bryce@waitaki.otago.ac.nz> |
3127 | ||
3128 | * gcj.texi (Invocation): Update JvAttachCurrentThread documentation. | |
3129 | Add note about handling uncaught exceptions. Add an exception handler | |
3130 | to example. | |
3131 | ||
0b055ea1 BM |
3132 | 2002-04-08 Bryce McKinlay <bryce@waitaki.otago.ac.nz> |
3133 | ||
3134 | * parse.y (resolve_qualified_expression_name): Clear "from_super" flag | |
3135 | after using it to patch CALL_EXPR. | |
3136 | ||
92c76eba BM |
3137 | 2002-04-08 Bryce McKinlay <bryce@waitaki.otago.ac.nz> |
3138 | ||
3139 | * gcj.texi (Invocation): Document CNI invocation API. | |
3140 | ||
78ef5b89 NB |
3141 | 2002-04-04 Neil Booth <neil@daikokuya.demon.co.uk> |
3142 | ||
3143 | * expr.c (truthvalue_conversion): Rename. Update. | |
3144 | (expand_compare): Update. | |
3145 | * java-tree.h (java_truthvalue_conversion): New. | |
3146 | * lang.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Redefine. | |
3147 | ||
dffd7eb6 NB |
3148 | 2002-04-01 Neil Booth <neil@daikokuya.demon.co.uk> |
3149 | ||
3150 | * java-tree.h (java_mark_addressable): New. | |
3151 | * lang.c (LANG_HOOKS_MARK_ADDRESSABLE): Redefine. | |
3152 | * typeck.c (mark_addressable): Rename, update. | |
3153 | ||
ceef8ce4 NB |
3154 | 2002-04-01 Neil Booth <neil@daikokuya.demon.co.uk> |
3155 | ||
3156 | * expr.c (build_java_binop): Update. | |
3157 | * java-tree.h (java_signed_type, java_unsigned_type, | |
3158 | java_signed_or_unsigned_type): Update. | |
3159 | * lang.c (LANG_HOOKS_SIGNED_TYPE, LANG_HOOKS_UNSIGNED_TYPE, | |
3160 | LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): New. | |
3161 | * parse.y (patch_binop): Update. | |
3162 | * typeck.c (signed_or_unsigned_type, unsigned_type, | |
3163 | signed_type): Update. | |
3164 | ||
7cb32822 NB |
3165 | 2002-03-31 Neil Booth <neil@daikokuya.demon.co.uk> |
3166 | ||
3167 | * lang.c (LANG_HOOKS_PRINT_ERROR_FUNCTION): Redefine. | |
3168 | (java_dummy_print): Remove. | |
3169 | (lang_print_error): Rename. Exit early if inhibiting output. | |
3170 | (inhibit_error_printing_function): New. | |
3171 | (java_init): Don't set hook. | |
3172 | (lang_init_source): Use new boolean. | |
3173 | ||
5bebbee7 MK |
3174 | 2002-03-29 Martin Kahlert <martin.kahlert@infineon.com> |
3175 | ||
3176 | * parse.y (do_resolve_class): Fix infinite recursion. | |
3177 | ||
bce54832 TT |
3178 | 2002-03-29 Tom Tromey <tromey@redhat.com> |
3179 | ||
3180 | * parse.y (check_inner_circular_reference): Ignore incomplete | |
3181 | types. | |
3182 | ||
b0c48229 NB |
3183 | 2002-03-29 Neil Booth <neil@daikokuya.demon.co.uk> |
3184 | ||
3185 | * Make-lang.in (builtins.o): Update. | |
3186 | * boehm.c (get_boehm_type_descriptor): Update. | |
3187 | * builtins.c: Include langhooks.h. | |
3188 | * decl.c (java_init_decl_processing): Update. | |
3189 | * java-tree.h (java_type_for_mode, java_type_for_size): New. | |
3190 | * lang.c (LANG_HOOKS_TYPE_FOR_MODE, LANG_HOOKS_TYPE_FOR_SIaZE): | |
3191 | Redefine. | |
3192 | * typeck.c (type_for_mode, type_for_size): Update. | |
3193 | ||
5843e870 MK |
3194 | 2002-03-29 Martin Kahlert <martin.kahlert@infineon.com> |
3195 | ||
3196 | * lex.c (java_new_lexer): Alias "646" to DEFAULT_ENCODING. | |
3197 | ||
073681c5 TT |
3198 | 2002-03-28 Tom Tromey <tromey@redhat.com> |
3199 | ||
3200 | * except.c (expand_end_java_handler): If the handler type is NULL, | |
3201 | use java.lang.Throwable. Fixes PR java/5986. | |
3202 | ||
242747e5 APB |
3203 | 2002-03-28 Alexandre Petit-Bianco <apbianco@redhat.com> |
3204 | ||
3205 | Fix for PR java/4715: | |
3206 | * jcf-parse.c (parse_source_file_3): New function. | |
3207 | (read_class): Call it. | |
3208 | (java_parse_file): Likewise. | |
3209 | ||
62c9aa5f | 3210 | 2002-03-28 Jan Hubicka <jh@suse.cz> |
f5eb5fd0 JH |
3211 | |
3212 | * java/lang.c (java_init_options): Set flag_trapping_math to 0. | |
3213 | ||
c187b20e BM |
3214 | 2002-03-28 Bryce McKinlay <bryce@waitaki.otago.ac.nz> |
3215 | ||
3216 | * parse.y (resolve_package): Initialize "decl". | |
3217 | (lookup_package_type): Remove unused function. | |
3218 | ||
2f418289 BM |
3219 | 2002-03-28 Bryce McKinlay <bryce@waitaki.otago.ac.nz> |
3220 | ||
3221 | Fix for PR java/5993: | |
3222 | * parse.y (resolve_package): Return the decl if resolution was | |
2c7e9098 | 3223 | successful. Don't special case "java.lang" and "java.lang.reflect" |
2f418289 BM |
3224 | packages. Set type_name to the merged identifier. |
3225 | (resolved_qualified_expression_name): Print error using "name" if | |
3226 | resolve_package returns NULL_TREE. | |
3227 | ||
39bea374 TT |
3228 | 2002-03-27 Tom Tromey <tromey@redhat.com> |
3229 | ||
3230 | * expr.c (expand_invoke): Don't generate null pointer check if | |
3231 | we're calling <init>. | |
3232 | ||
c9d892a8 NB |
3233 | 2002-03-27 Neil Booth <neil@daikokuya.demon.co.uk> |
3234 | ||
3235 | * expr.c (java_lang_expand_expr): Rename java_expand_expr, | |
3236 | fix prototype. | |
3237 | * java-tree.h (java_lang_expand_expr): Similarly. | |
3238 | * lang.c (LANG_HOOKS_EXPAND_EXPR): Redefine. | |
3239 | (java_init): Don't set hook. | |
3240 | ||
05833095 BM |
3241 | 2002-03-27 Bryce McKinlay <bryce@waitaki.otago.ac.nz> |
3242 | ||
3243 | Fix for PR java/5850: | |
3244 | * parse.y (lookup_field_wrapper): Call itself recursively for enclosing | |
3245 | context if field was not found in the current scope. | |
3246 | * expr.c (lookup_field): Don't look in enclosing contexts. | |
3247 | ||
c8c21a8c TT |
3248 | 2002-03-26 Tom Tromey <tromey@redhat.com> |
3249 | ||
3250 | Fix for PR java/5942: | |
3251 | * parse.y (init_src_parse): Added sanity check. | |
3252 | * parse.h (struct parser_ctxt) [modifier_ctx]: Array has 12 | |
3253 | elements, not 11. | |
3254 | ||
4f0ade92 NB |
3255 | 2002-03-26 Neil Booth <neil@daikokuya.demon.co.uk> |
3256 | ||
3257 | * decl.c (lang_mark_tree): Rename java_mark_tree. | |
3258 | * java-tree.h (java_mark_tree): New. | |
3259 | * java-lang.c (LANG_HOOKS_MARK_TREE): Redefine. | |
3260 | ||
15e5ad76 ZW |
3261 | 2002-03-25 Zack Weinberg <zack@codesourcery.com> |
3262 | ||
3263 | * lex.c: Change java_perform_atof to take normal parameters | |
3264 | instead of a pointer to a parameter block. Call it directly | |
3265 | from java_lex. | |
3266 | ||
caaabaa1 MW |
3267 | 2002-03-22 Mark Wielaard <mark@klomp.org> |
3268 | ||
3269 | Fix for PR java/5368: | |
3270 | * parse.y (resolve_qualified_expression_name): Use decl not field_decl | |
3271 | when printing error message. | |
3272 | ||
c88770e9 NB |
3273 | 2002-03-25 Neil Booth <neil@daikokuya.demon.co.uk> |
3274 | ||
3275 | * decl.c (maybe_build_cleanup): Remove. | |
3276 | ||
c58408bf TT |
3277 | 2002-03-22 Tom Tromey <tromey@redhat.com> |
3278 | ||
3279 | Andrew Haley <aph@cambridge.redhat.com> | |
3280 | ||
3281 | * expr.c (build_field_ref): Don't build a check if the field is a | |
3282 | member of `this'. | |
3283 | ||
6c18d181 EB |
3284 | 2002-03-21 Eric Blake <ebb9@email.byu.edu> |
3285 | ||
3286 | Fix for PR java/6026: | |
3287 | * lex.c (java_lex): Fix parsing of consecutive floats. | |
3288 | ||
a5778545 TT |
3289 | 2002-03-21 Tom Tromey <tromey@redhat.com> |
3290 | ||
3291 | * parse.y (build_access_to_thisn): Stop when FROM is not an inner | |
3292 | class. | |
3293 | ||
43577e6b NB |
3294 | 2002-03-21 Neil Booth <neil@daikokuya.demon.co.uk> |
3295 | ||
3296 | * cp-tree.h (pushdecl, pushlevel, poplevel, set_block, | |
3297 | insert_block, getdecls, kept_level_p, global_bindings_p): New. | |
3298 | ||
fe911510 NF |
3299 | 2002-03-20 Nic Ferrier <nferrier@tapsellferrier.co.uk> |
3300 | ||
2c7e9098 | 3301 | * gcj.texi: @code{gcj} becomes @command{gcj}. |
15e5ad76 ZW |
3302 | @code{gcc} becomes @command{gcc}. |
3303 | GcjRaw changed to gnu.gcc.RawData. | |
3304 | ||
7afff7cf NB |
3305 | 2002-03-20 Neil Booth <neil@daikokuya.demon.co.uk> |
3306 | ||
3307 | * decl.c (start_java_method): Use new hook. | |
3308 | * lang.c (LANG_HOOKS_DECL_PRINTABLE_NAME): Redefine. | |
3309 | (java_init): Remove old hook. | |
3310 | ||
c2d8e20a APB |
3311 | 2002-03-18 Alexandre Petit-Bianco <apbianco@redhat.com> |
3312 | ||
3313 | * builtins.c (define_builtin): Do nothing if `type' is null. | |
3314 | Fixes PR java/5876. | |
3315 | ||
6befbee5 BM |
3316 | 2002-03-18 Bryce McKinlay <bryce@waitaki.otago.ac.nz> |
3317 | ||
3318 | * parse.y (parser_check_super_interface): Fix error message | |
3319 | grammar/order. | |
3320 | ||
320c81a6 KG |
3321 | 2002-03-17 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
3322 | ||
3323 | * jcf-parse.c (get_constant): Delete unused variables. | |
3324 | ||
52dabb6c NB |
3325 | 2002-03-17 Neil Booth <neil@daikokuya.demon.co.uk> |
3326 | ||
3327 | * java-tree.h (java_parse_file): New. | |
3328 | * jcf-parse.c (yyparse): Rename java_parse_file. | |
3329 | * lang.c (LANG_HOOKS_PARSE_FILE): Redefine. | |
3330 | ||
568d1435 BM |
3331 | 2002-03-16 Bryce McKinlay <bryce@waitaki.otago.ac.nz> |
3332 | ||
3333 | * parse.y (craft_constructor): Return the constructor decl. | |
3334 | (java_expand_classes): Update comments. | |
3335 | (lookup_method_invoke): Call fix_constructors immediately for | |
3336 | anonymous class. Fixes PR java/5935. | |
3337 | ||
8d39b447 AG |
3338 | 2002-03-15 Anthony Green <green@redhat.com> |
3339 | ||
3340 | * jcf-parse.c (yyparse): Don't emit class registration | |
3341 | constructor when compiling resource files. | |
3342 | ||
2f9834e8 KG |
3343 | 2002-03-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
3344 | ||
3345 | * lang.c (java_tree_code_type, java_tree_code_length, | |
3346 | tree_code_name): Delete. | |
3347 | (tree_code_type, tree_code_length, tree_code_name): Define. | |
3348 | (java_init): Don't try to copy into the various tree_code | |
3349 | arrays. | |
3350 | ||
f792bce5 TT |
3351 | 2002-03-12 Tom Tromey <tromey@redhat.com> |
3352 | ||
8a611251 TT |
3353 | * jcf-parse.c (get_constant) [CONSTANT_String]: String values are |
3354 | UTF-8, not UCS-2. Fixes PR java/5923. | |
3355 | ||
f792bce5 TT |
3356 | * parse.y (qualify_ambiguous_name): Handle case where QUAL_WFL is |
3357 | a call_expr wrapped in a convert. Fixes PR java/5848. | |
3358 | ||
acf8bc25 BM |
3359 | 2002-03-12 Bryce McKinlay <bryce@waitaki.otago.ac.nz> |
3360 | ||
3361 | * jcf-write.c (write_classfile): Improve error strings. | |
3362 | ||
e0b1c206 EB |
3363 | 2002-03-11 Eric Blake <ebb9@email.byu.edu> |
3364 | ||
3365 | * lex.c: Adjust comments to GNU standards. | |
3366 | ||
3367 | 2002-03-11 Eric Blake <ebb9@email.byu.edu> | |
3368 | ||
3369 | Fix for PR java/5902: | |
3370 | * lex.c (java_lex): Fix parsing of literals. | |
3371 | ||
884523df BM |
3372 | 2002-03-11 Bryce McKinlay <bryce@waitaki.otago.ac.nz> |
3373 | ||
3374 | * parse.y (patch_assignment): Wrap the right-hand-side with a save_expr | |
3375 | to prevent it getting evaluated twice in the store checking case. | |
3376 | * expr.c (build_java_arraystore_check): Unwrap SAVE_EXPR's when | |
3377 | examining OBJECT. | |
3378 | ||
45597167 BM |
3379 | 2002-03-09 Bryce McKinlay <bryce@waitaki.otago.ac.nz> |
3380 | ||
3381 | * decl.c (java_init_decl_processing): Make sure class_type_node | |
3382 | alignment is not less than 64 bits if hash synchronization is enabled. | |
3383 | ||
edcc88c1 PB |
3384 | 2002-03-08 Per Bothner <per@bothner.com> |
3385 | ||
3386 | * parse.y (java_complete_lhs): Check if patch_assignment | |
3387 | returned an error-mark. | |
3388 | ||
3389 | * parse.y (try_builtin_assignconv): Don't special-case zero. | |
3390 | ||
5295f849 PB |
3391 | 2002-03-08 Per Bothner <per@bothner.com> |
3392 | ||
3393 | Fix for PR java/5812. | |
3394 | * expr.c (build_java_jsr): Take pc arguments, and do lookup_label | |
be3ac45e | 3395 | here instead of in JSR macro. Likewise with load_type_state call. |
5295f849 | 3396 | Do the latter on if the return_pc has been verified (the jsr returns). |
be3ac45e | 3397 | (JSR): Now just call build_java_jsr. |
5295f849 | 3398 | |
d3e1c36d JS |
3399 | 2002-03-07 Jeff Sturm <jsturm@one-point.com> |
3400 | ||
3401 | * java/Make-lang.in (JAVA_TARGET_INSTALL_NAME): Define. | |
3402 | (java.install-common): Link native driver to | |
3403 | JAVA_TARGET_INSTALL_NAME. | |
3404 | ||
6d6b5cd7 DB |
3405 | 2002-03-05 David Billinghurst <David.Billinghurst@riotinto.com> |
3406 | ||
3407 | * builtins.c(cos_builtin): method_return_type ATTRIBUTE_UNUSED | |
3408 | * builtins.c(sin_builtin): Likewise | |
3409 | * builtins.c(sqrt_builtin): Likewise | |
3410 | ||
ba31d94e ZW |
3411 | 2002-03-03 Zack Weinberg <zack@codesourcery.com> |
3412 | ||
3413 | * java/expr.c, java/jcf-parse.c, java/lex.c: | |
3414 | Remove all #ifndef REAL_ARITHMETIC blocks, make all #ifdef | |
3415 | REAL_ARITHMETIC blocks unconditional. Delete some further | |
3416 | #ifdef blocks predicated on REAL_ARITHMETIC. | |
3417 | ||
ca7558fc KG |
3418 | 2002-03-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
3419 | ||
3420 | * class.c (init_class_processing): Use ARRAY_SIZE in lieu of | |
3421 | explicit sizeof/sizeof. | |
3422 | * decl.c (java_init_decl_processing): Likewise. | |
3423 | * jcf-parse.c (init_jcf_parse): Likewise. | |
3424 | * parse.y (init_src_parse): Likewise. | |
3425 | ||
2a85660d PB |
3426 | 2002-03-02 Per Bothner <per@bothner.com> |
3427 | ||
3428 | Make --CLASSPATH by a synonym for --classpath and -classpath. | |
3429 | Implement --bootclasspath. | |
3430 | * jcf-path.c (classpath_u): Rename static variable to classpath_user. | |
3431 | (classpath_l): Remove. | |
3432 | (jcf_path_CLASSPATH_arg): Remove. | |
3433 | (jcf_path_bootclasspath_arg): New function. | |
3434 | (jcf_path_seal): Simplify accordingly. | |
3435 | ||
3436 | * jcf.h (jcf_path_bootclasspath_arg): New declarations. | |
3437 | (jcf_path_CLASSPATH): Remove declaration. | |
3438 | * jvspec.c (jvgenmain_spec): Also accept -fbootclasspath*. | |
3439 | (lang_specific_driver): Translate -bootclasspath. | |
3440 | * lang-options.h: Add --bootclasspath. Update --CLASSPATH. | |
3441 | * lang.c (decode_lang_options): Do jcf_path_init first. | |
3442 | Handle -fCLASSPATH same as -fclasspath. Also process -fbootclasspath. | |
3443 | * gjavah.c: Also handle --bootclasspath. | |
3444 | Handle --CLASSPATH as a synonum for --classpath. | |
3445 | * jcf-dump.c: Likewise. | |
3446 | ||
3447 | "." is not part of system path, but is the default for --classpath. | |
3448 | * jcf-path.c (jcf_path_init): Don't add "." to sys_dirs. | |
3449 | (jcf_path_seal): Add "." if no CLASSPATH specified. | |
3450 | ||
3451 | * gcj.texi: Document changes. | |
3452 | ||
2060fd4c BM |
3453 | 2002-03-01 Bryce McKinlay <bryce@waitaki.otago.ac.nz> |
3454 | ||
3455 | * expr.c (build_java_arraystore_check): Fix formatting. | |
3456 | ||
4f647d52 APB |
3457 | 2002-02-28 Alexandre Petit-Bianco <apbianco@redhat.com> |
3458 | ||
3459 | Fix for PR java/5758, java/5632: | |
3460 | * jcf-parse.c (load_class): Renamed local variable, consider `.' an | |
3461 | inner-class separator too. | |
3462 | * parse.y (do_resolve_class): New local `decl_result.' | |
3463 | Progressively build a name for what can have been loaded. | |
3464 | ||
022dcc46 BM |
3465 | 2002-02-28 Bryce McKinlay <bryce@waitaki.otago.ac.nz> |
3466 | ||
3467 | * expr.c (java_array_data_offset): Removed function. | |
3468 | (JAVA_ARRAY_LENGTH_OFFSET): Removed macro. | |
3469 | (build_java_array_length_access): Obtain "length" value using a | |
3470 | COMPONENT_REF, instead of INDIRECT_REF and arithmetic. | |
3471 | (build_java_arrayaccess): Correct comment. Access "data" using a | |
3472 | COMPONENT_REF, and return an ARRAY_REF instead of an INDIRECT_REF. | |
3473 | (build_java_arraystore_check): New function. | |
3474 | (expand_java_arraystore): Use build_java_arraystore_check. | |
3475 | * parse.y (patch_assignment): Simplify code to insert a store check | |
3476 | when lvalue is an ARRAY_REF. Use build_java_arraystore_check. | |
3477 | * check-init.c (check_init): Update to reflect that an array length | |
3478 | access is now a COMPONENT_REF. | |
3479 | * gcj.texi (Code Generation): Improve documentation of | |
3480 | -fno-bounds-check. Add documentation for -fno-store-check. | |
3481 | * java-tree.h (flag_store_check): Declare. | |
3482 | (build_java_arraystore_check): Declare. | |
3483 | * lang.c (flag_store_check): Initialize to 1. | |
3484 | (lang_f_options): Add store-check option. | |
3485 | * jvspec.c: Don't pass store-check option to jvgenmain. | |
3486 | * lang-options.h: Add help string for -fno-store-check. | |
3487 | ||
63e1b1c4 NB |
3488 | 2002-02-28 Neil Booth <neil@daikokuya.demon.co.uk> |
3489 | ||
3490 | * decl.c (copy_lang_decl): Rename java_dup_lang_specific_decl. | |
3491 | * java-tree.h (java_dup_lang_specific_decl): New. | |
3492 | * lang.c (LANG_HOOKS_DUP_LANG_SPECIFIC_DECL): Redefine. | |
3493 | ||
f458d1d5 ZW |
3494 | 2002-02-27 Zack Weinberg <zack@codesourcery.com> |
3495 | ||
3496 | * builtins.c, decl.c: Delete traditional-mode-related code | |
3497 | copied from the C front end but not used, or used only to | |
3498 | permit the compiler to link. | |
3499 | ||
d2fb5329 TT |
3500 | 2002-02-22 Tom Tromey <tromey@redhat.com> |
3501 | ||
3502 | Fix for PR java/2369: | |
3503 | * jvspec.c (verify_class_name): New function. | |
3504 | (lang_specific_driver): Call it. | |
3505 | (JAVA_START_CHAR_P): New macro. | |
3506 | (JAVA_PART_CHAR_P): Likewise. | |
3507 | ||
dcb36804 PB |
3508 | 2002-02-22 Per Bothner <per@bothner.com> |
3509 | ||
022dcc46 | 3510 | * class.c: Change vtable to be more compatible with g++ v3 abi. |
dcb36804 PB |
3511 | (get_dispatch_table): Prepend offset-to-top (always 0) and |
3512 | type_info pointer (currently unimplemented hence NULL) to vtable. | |
3513 | Specifically, prepend offset-to-top and typeinfo ptr (currently null). | |
3514 | (make_class_data): Variable dtable_start_offset is sizeof 2 pointers. | |
3515 | Adjust vtable pointers by dtable_start_offse - i.e. skip new words. | |
3516 | (build_dtable_decl): Add declarations for new fields. | |
3517 | ||
453c182f PB |
3518 | 2002-02-20 Per Bothner <per@bothner.com> |
3519 | ||
3520 | * parse.y (patch_method_invocation): Set CAN_COMPLETE_NORMALLY on call | |
3521 | to finit$ (otherwise generate_bytecode_insns drops it). However, we | |
3522 | don't need to set it on the COMPOUND_EXPR - the caller does that. | |
3523 | ||
3babb2e3 NF |
3524 | 2002-02-20 Nic Ferrier <nferrier@tapsellferrier.co.uk> |
3525 | ||
15e5ad76 ZW |
3526 | * gcj.texi: Option `--classpath' becomes `--CLASSPATH.'Option |
3527 | `--CLASSPATH' becomes `--classpath.' | |
3528 | * gjavah.c: Likewise. | |
3529 | * jcf-dump.c: Likewise. | |
3530 | * lang-options.h: Likewise. | |
3531 | * lang.c: Likewise. | |
3532 | * jcf-path.c: Updated comment. | |
3533 | (jcf_path_classpath_arg): Renamed `jcf_path_CLASSPATH_arg.' | |
3534 | (jcf_path_CLASSPATH_arg): Renamed `jcf_path_classpath_arg.' | |
3535 | * jcf.h (jcf_path_CLASSPATH_arg): Ditto. | |
3536 | (jcf_path_CLASSPATH_arg): Ditto. | |
3537 | (classpath_u): Updated leading comment. | |
3babb2e3 | 3538 | |
9fe2cc05 PB |
3539 | 2002-02-20 Per Bothner <per@bothner.com> |
3540 | ||
3541 | * builtins.c (check_for_builtin): New function. | |
3542 | (build_call_or_builtin): Remove. | |
3543 | * java-tree.h: Update accordingly. | |
3544 | * expr.c (expand_invoke): Use build + check_for_builtin instead | |
3545 | of build_call_or_builtin. | |
3546 | * parse.y (patch_invoke): Likewise. This avoids needlessly creating | |
3547 | a new CALL_EXPR node, which means we don't lose the CALL_USING_SUPER | |
3548 | flag (which had caused jcf-write to incorrectly emit invokevirtual). | |
3549 | ||
6b6294f1 TT |
3550 | 2002-02-17 Tom Tromey <tromey@redhat.com> |
3551 | ||
3552 | * java-tree.h (TYPE_STRICTFP): New macro. | |
3553 | (struct lang_type) [strictfp]: New field. | |
3554 | (CLASS_STRICTFP): New macro. | |
3555 | (METHOD_STRICTFP): New macro. | |
3556 | (struct lang_decl) [strictfp]: New field. | |
3557 | * parse.y (method_header): Disallow strictfp constructor or | |
3558 | abstract method. | |
3559 | (STRICT_TK): Move before MODIFIER_TK. | |
3560 | * parse.h (CLASS_MODIFIERS): Added ACC_STRICT. | |
3561 | (METHOD_MODIFIERS): Likewise. | |
3562 | (INTERFACE_MODIFIERS): Likewise. | |
3563 | * jcf-write.c (get_access_flags): Likewise. | |
3564 | * class.c (set_class_decl_access_flags): Recognize ACC_STRICT. | |
3565 | (add_method_1): Likewise. | |
3566 | (get_access_flags_from_decl): Likewise. | |
3567 | * jcf-dump.c (print_access_flags): Print in standard order. Also, | |
3568 | recognize strictfp flag. | |
3569 | * jcf.h (ACC_STRICT): New define. | |
3570 | ||
5667c33d DB |
3571 | 2002-02-12 David Billinghurst <Davod.Billinghurst@riotinto.com> |
3572 | ||
3573 | * class.c(build_utf8_ref): Move declaration of decl_size | |
3574 | ||
5d65aeb7 TT |
3575 | 2002-02-07 Tom Tromey <tromey@redhat.com> |
3576 | ||
3577 | * gcj.texi (Input Options): --CLASSPATH does not suppress system | |
3578 | path. | |
3579 | ||
10c45943 AG |
3580 | 2002-02-04 Anthony Green <green@redhat.com> |
3581 | ||
3582 | * class.c (build_utf8_ref): Put UTF-8 constants into merged | |
3583 | sections if available. | |
3584 | ||
14b71055 BM |
3585 | 2002-02-04 Bryce McKinlay <bryce@waitaki.otago.ac.nz> |
3586 | ||
3587 | * parse.y (java_expand_classes): Fix typo in static field loop. | |
3588 | ||
f0c75752 RH |
3589 | 2002-02-02 Richard Henderson <rth@redhat.com> |
3590 | ||
3591 | * class.c (add_field): Mark static fields external. | |
3592 | (build_class_ref): Remove redundant set. | |
3593 | * parse.y (java_expand_classes): Mark static fields of classes | |
3594 | to be compiled as local. | |
3595 | * jcf-parse.c (parse_class_file): Likewise. | |
3596 | ||
d4ad1c90 NF |
3597 | 2002-02-02 Nic Ferrier <nferrier@tapsellferrier.co.uk> |
3598 | ||
3599 | * gcj.texi (About CNI): New node. | |
3600 | ||
58fae3f7 CR |
3601 | 2002-02-01 Craig Rodrigues <rodrigc@gcc.gnu.org> |
3602 | ||
3603 | PR java/5080 | |
3604 | * jcf-parse.c : Check for HAVE_LOCALE_H before using | |
3605 | setlocale() with LC_CTYPE as a parameter. | |
3606 | * jv-scan.c: Same. | |
3607 | ||
8512bbd7 JM |
3608 | 2002-01-31 Joseph S. Myers <jsm28@cam.ac.uk> |
3609 | ||
3610 | * gjavah.c (version), jcf-dump.c (version), jv-scan.c (version): | |
3611 | Follow GNU Coding Standards for --version. | |
3612 | ||
adc8cb5d TT |
3613 | 2002-01-28 Tom Tromey <tromey@redhat.com> |
3614 | ||
3615 | * expr.c (build_jni_stub): Ensure storage for `meth' is | |
3616 | generated. | |
3617 | * parse.y (java_complete_expand_methods): Set | |
3618 | current_function_decl before building JNI stub. | |
3619 | ||
1d8478d7 | 3620 | 2002-01-26 Andreas Tobler <a.tobler@schweiz.ch> |
15e5ad76 | 3621 | |
1d8478d7 AT |
3622 | * gcc/java/builtins.c (sqrt_builtin): Use BUILT_IN_SQRT, not |
3623 | BUILT_IN_SQRTF. | |
3624 | ||
fec763fc TT |
3625 | 2002-01-22 Tom Tromey <tromey@redhat.com> |
3626 | ||
3627 | * decl.c (java_init_decl_processing): Use add_predefined_file. | |
3628 | Predefine RawData.java. | |
3629 | (predef_filenames): Removed. | |
3630 | (java_init_decl_processing): Don't register predef_filenames. | |
3631 | * jcf-parse.c (add_predefined_file): New function. | |
3632 | (predefined_filename_p): Rewrote. | |
3633 | (predefined_filename_p): No longer static. | |
3634 | * decl.c (java_init_decl_processing): Call initialize_builtins. | |
3635 | * Make-lang.in (JAVA_OBJS): Added builtins.o. | |
3636 | (java/builtins.o): New target. | |
3637 | * builtins.c: New file. | |
3638 | * parse.y (patch_invoke): Use build_call_or_builtin. | |
3639 | * java-tree.h (build_call_or_builtin): Declare. | |
3640 | (initialize_builtins): Declare. | |
3641 | (java_set_exception_lang_code): Removed unused declaration. | |
3642 | (PREDEF_FILENAMES_SIZE): Removed. | |
3643 | (java_tree_index): Added JTI_PREDEF_FILENAMES. | |
3644 | (predef_filenames): New define. | |
3645 | (add_predefined_file): Declare. | |
3646 | (predefined_filename_p): Declare. | |
3647 | * expr.c (expand_invoke): Use build_call_or_builtin. | |
3648 | ||
cc586d70 KG |
3649 | 2002-01-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
3650 | ||
3651 | * parse.y (patch_switch_statement): Fix format specifier. | |
3652 | ||
0df29596 TT |
3653 | 2002-01-16 Tom Tromey <tromey@redhat.com> |
3654 | ||
3655 | More for PR java/5365: | |
3656 | * gjavah.c (print_stub_or_jni): Cause exception to be thrown by | |
3657 | default. | |
3658 | (process_file): Generate include for | |
3659 | java.lang.UnsupportedOperationExceptions. | |
3660 | ||
e1886ae0 AJ |
3661 | 2002-01-15 Andreas Jaeger <aj@suse.de> |
3662 | ||
3663 | * .cvsignore: Add man pages. | |
3664 | ||
9c874875 TT |
3665 | 2002-01-15 Tom Tromey <tromey@redhat.com> |
3666 | ||
3667 | Fix for PR java/5365: | |
3668 | * gjavah.c (process_file): Turn class name into a file name. | |
3669 | ||
707635f9 MK |
3670 | 2002-01-14 Matthias Klose <doko@debian.org> |
3671 | ||
3672 | * gcj.texi: Fix whitespace and formatting errors in the | |
3673 | synopsis of the man pages. Update copyright. | |
3674 | ||
e6a5e462 TT |
3675 | 2002-01-14 Tom Tromey <tromey@redhat.com> |
3676 | ||
3677 | For PR libgcj/5303: | |
3678 | * Make-lang.in (java.install-man): Handle jv-convert man page. | |
3679 | (java.generated-manpages): Added jv-convert.1. | |
3680 | (java.uninstall): Remove jv-convert.1. | |
3681 | (java.maintainer-clean): Likewise. | |
3682 | ($(srcdir)/java/jv-convert.1): New target. | |
3683 | * gcj.texi (Top): Link to jv-convert node. | |
3684 | (Individual utilities): Likewise. | |
3685 | (Invoking jv-convert): New node. | |
3686 | ||
0b0d4c5b | 3687 | 2001-01-10 Jeff Sturm <jsturm@one-point.com> |
f0c75752 | 3688 | Martin Kahlert <martin.kahlert@infineon.com> |
0b0d4c5b JS |
3689 | |
3690 | * jcf-parse.c (get_constant): Don't swap lo/hi for big | |
3691 | endian targets when HOST_BITS_PER_WIDE_INT >= 64. | |
3692 | ||
c0b65ff1 | 3693 | 2002-01-03 Graham Stott <grahams@redhat.com> |
79ab76fd | 3694 | |
f0c75752 RH |
3695 | * class.c (compile_resource_file): Update copyright date. |
3696 | Constify filename parameter. | |
3697 | (java-tree.h): Update copyright date. | |
3698 | (compile_resource_file): Constify filename parameter. | |
79ab76fd | 3699 | |
22e85ed4 GS |
3700 | 2002-01-03 Graham Stott <grahams@redhat.com> |
3701 | ||
f0c75752 RH |
3702 | * gcc/jcf-parse.c: Update copyright date. |
3703 | (yyparse): Constify resource_filename. | |
22e85ed4 | 3704 | |
5e65297b KG |
3705 | 2002-01-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
3706 | ||
3707 | * parse.y (src_parse_roots): Don't needlessly zero init. | |
3708 | ||
12cfb4fc TT |
3709 | 2001-12-31 Tom Tromey <tromey@redhat.com> |
3710 | ||
3711 | * parse.y (dump_java_tree): New function. | |
3712 | (source_end_java_method): Call it. | |
3713 | (end_class_declaration): Likewise. | |
3714 | * lang.c (java_decode_option): Call dump_switch_p. | |
3715 | ||
dab722ee TT |
3716 | 2001-12-28 Tom Tromey <tromey@redhat.com> |
3717 | ||
3718 | * gen-table.pl: Don't process characters after \uffff. Added | |
3719 | comment pointing to input file. | |
3720 | ||
7b0295ab KG |
3721 | 2001-12-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
3722 | ||
3723 | * gen-table.pl: Const-ify output. Document the location of a | |
3724 | suitable unicode input file. | |
3725 | ||
3726 | * chartables.h: Regenerate. | |
3727 | ||
c083a819 KG |
3728 | 2001-12-26 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
3729 | ||
3730 | * chartables.h: Const-ify. | |
3731 | * gjavah.c (options): Likewise. | |
3732 | * jcf-dump.c (options): Likewise. | |
3733 | * jv-scan.c (options): Likewise. | |
3734 | * lex.c (java_start_char_p, java_part_char_p): Likewise. | |
3735 | * parse.y (binop_lookup): Likewise. | |
3736 | ||
0b5826ac KG |
3737 | 2001-12-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
3738 | ||
3739 | * Make-lang.in (keyword.h): Pass -C to gperf to const-ify | |
3740 | the static arrays that are output. | |
3741 | * jvspec.c (jvgenmain_spec): Make static. | |
3742 | * keyword.gperf (struct java_keyword, java_keyword): Const-ify. | |
3743 | * keyword.h: Regenerate. | |
3744 | * lang.c (string_option, process_option_with_no, lang_f_options, | |
3745 | lang_W_options): Const-ify. | |
3746 | * lex.c (java_lex): Likewise. | |
3747 | ||
9a07cfaf RH |
3748 | 2001-12-21 Richard Henderson <rth@redhat.com> |
3749 | ||
3750 | * boehm.c (PROCEDURE_OBJECT_DESCRIPTOR): Merge into .. | |
3751 | (get_boehm_type_descriptor): ... here. Arrange for the | |
3752 | TREE_TYPE to get set properly. | |
3753 | ||
f44fefca RH |
3754 | 2001-12-21 Richard Henderson <rth@redhat.com> |
3755 | ||
ef969525 RH |
3756 | * class.c (compile_resource_file): Set TREE_PUBLIC on the constructor |
3757 | only if the target requires collect2. | |
3758 | ||
f44fefca RH |
3759 | * class.c (build_class_ref): Mark _Jv_fooClass DECL_EXTERNAL. |
3760 | ||
84a944b3 TT |
3761 | 2001-12-20 Tom Tromey <tromey@redhat.com> |
3762 | ||
3763 | For PR java/4509: | |
3764 | * parse.y (java_complete_lhs) [COMPOUND_EXPR]: Correctly compute | |
3765 | CAN_COMPLETE_NORMALLY for the node. | |
3766 | * jcf-write.c (generate_bytecode_insns) [COMPOUND_EXPR]: Don't | |
3767 | generate code for second branch if first branch can't complete | |
3768 | normally. | |
3769 | (generate_bytecode_insns) [LOOP_EXPR]: Don't generate `goto' to | |
3770 | the loop head if the loop body can't complete normally. | |
3771 | ||
2d93b924 TT |
3772 | 2001-12-20 Tom Tromey <tromey@redhat.com> |
3773 | ||
3774 | For PR java/4766: | |
3775 | * jcf-write.c (generate_bytecode_insns) [TRY_FINALLY_EXPR]: Handle | |
3776 | case where `finally' clause can't complete normally. | |
3777 | ||
f2af50db TT |
3778 | 2001-12-20 Tom Tromey <tromey@redhat.com> |
3779 | ||
3780 | Fixes PR java/5057: | |
3781 | * parse.y (analyze_clinit_body): Added this_class parameter. | |
3782 | Check for more cases where we must keep <clinit>. | |
3783 | (maybe_yank_clinit): Cleaned up flow control. | |
3784 | ||
7899e8b9 BM |
3785 | 2001-12-20 Bryce McKinlay <bryce@waitaki.otago.ac.nz> |
3786 | ||
e1886ae0 | 3787 | * decl.c (java_init_decl_processing): Don't initialize |
7899e8b9 BM |
3788 | finit_leg_identifier_node. |
3789 | * java-tree.h (java_tree_index): Remove JTI_FINIT_LEG_IDENTIFIER_NODE. | |
3790 | (finit_leg_identifier_node): Remove. | |
3791 | (ID_FINIT_P): Don't check for JTI_FINIT_LEG_IDENTIFIER_NODE. | |
3792 | ||
de4984af BM |
3793 | 2001-12-20 Bryce McKinlay <bryce@waitaki.otago.ac.nz> |
3794 | ||
e1886ae0 | 3795 | * mangle.c (mangle_member_name): Don't special-case for |
de4984af BM |
3796 | NO_DOLLAR_IN_LABEL. |
3797 | * mangle_name.c (unicode_mangling_length): Likewise. | |
3798 | (append_unicode_mangled_name): Likewise. | |
3799 | * parse.y (make_nested_class_name): Remove dead NO_DOLLAR_IN_LABEL | |
3800 | code. | |
3801 | ||
08514ae4 BM |
3802 | 2001-12-20 Bryce McKinlay <bryce@waitaki.otago.ac.nz> |
3803 | ||
3804 | * expr.c (build_java_array_length_access): Don't force null pointer | |
3805 | check unless flag_check_references is set. | |
3806 | ||
56b8325e TT |
3807 | 2001-12-20 Tom Tromey <tromey@redhat.com> |
3808 | ||
3809 | Fix for PR java/3417: | |
3810 | * parse.y (patch_assignment): Added special processing for | |
3811 | `return'. | |
3812 | (patch_return): Don't convert booleans to integers, and don't | |
3813 | special-case `null'. | |
3814 | ||
38be19f6 JM |
3815 | 2001-12-20 Joseph S. Myers <jsm28@cam.ac.uk> |
3816 | ||
3817 | * config-lang.in (diff_excludes): Remove. | |
3818 | ||
b11cc610 JM |
3819 | 2001-12-17 Joseph S. Myers <jsm28@cam.ac.uk> |
3820 | ||
3821 | * gcj.texi: Update link to GCC manual. | |
3822 | ||
e97562f5 TT |
3823 | 2001-12-17 Tom Tromey <tromey@redhat.com> |
3824 | ||
3825 | * parse.y (link_nested_class_to_enclosing): Removed useless | |
3826 | statement. | |
3827 | ||
2c5187c5 TT |
3828 | 2001-12-16 Tom Tromey <tromey@redhat.com> |
3829 | ||
3830 | * mangle.c (mangle_method_decl): Never emit `C2' constructor. | |
3831 | Fixes PR java/5088. | |
3832 | ||
a83f01f0 JM |
3833 | 2001-12-16 Joseph S. Myers <jsm28@cam.ac.uk> |
3834 | ||
3835 | * ChangeLog, Make-lang.in, class.c, expr.c, gcj.texi, java-tree.h, | |
3836 | jcf-parse.c, jcf-write.c, lex.c, parse.h, parse.y, verify.c: Fix | |
3837 | spelling errors. | |
3838 | ||
faf31866 KG |
3839 | 2001-12-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
3840 | ||
3841 | * lex.c (java_read_unicode, java_lex): Use hex_p/hex_value. | |
3842 | ||
9a8de998 BM |
3843 | 2001-12-16 Bryce McKinlay <bryce@waitaki.otago.ac.nz> |
3844 | ||
3845 | * decl.c (java_init_decl_processing): Build otable_type correctly. | |
3846 | otable_decl is an otable_type. | |
3847 | ||
861ef928 BM |
3848 | 2001-12-15 Bryce McKinlay <bryce@waitaki.otago.ac.nz> |
3849 | ||
3850 | * java-tree.h (otable_methods, otable_decl, otable_syms_decl, | |
e1886ae0 | 3851 | otable_type, otable_ptr_type, method_symbol_type, |
861ef928 BM |
3852 | method_symbols_array_type, method_symbols_array_ptr_type): New |
3853 | field/global tree definitions. | |
3854 | (flag_indirect_dispatch): New flag. | |
e1886ae0 | 3855 | * decl.c (java_init_decl_processing): Initialize new otable and |
861ef928 BM |
3856 | otable_syms type nodes and decls. Add new field "index" to |
3857 | method_type_node. | |
3858 | * class.c (build_method_symbols_entry): New function. | |
3859 | (make_method_value): Set "index" to to method's vtable index for | |
3860 | virtual methods when indirect-dispatch is not used. | |
a83f01f0 | 3861 | (make_class_data): For indirect-dispatch, don't emit the dtable_decl, |
861ef928 BM |
3862 | and set vtable_method_count to -1. Set otable and otable_syms field |
3863 | if indirect-dispatch is used and there was something to put in them. | |
3864 | (build_method_symbols_entry): New function. | |
3865 | (emit_offset_symbol_table): New function. | |
3866 | * expr.c (get_offset_table_index): New function. | |
e1886ae0 | 3867 | (build_invokevirtual): Build array reference to otable at the index |
861ef928 BM |
3868 | returned by get_offset_table_index, and use the result as the vtable |
3869 | offset. | |
3870 | (build_invokeinterface): Similar. | |
e1886ae0 AJ |
3871 | * jcf-parse.c (yyparse): If indirect-dispatch, call |
3872 | emit_offset_symbol_table at the end of compilation, after all classes | |
861ef928 BM |
3873 | have been generated. |
3874 | * jvspec.c: Don't pass findirect-dispatch to jvgenmain. | |
3875 | * lang.c (flag_indirect_dispatch): Define. | |
3876 | (lang_f_options): Add indirect-dispatch flag. | |
3877 | ||
f1727481 MK |
3878 | 2001-12-14 Matthias Klose <doko@debian.org> |
3879 | ||
3880 | * gcj.texi: Markup for man page generation. Document missing | |
3881 | options printed by <tool> --help. | |
3882 | Terminate description of gij's -ms option with a dot. | |
3883 | * Make-lang.in ($(srcdir)/java/*.1): New targets. | |
3884 | (java.generated-manpages java.install-man, java.uninstall, | |
3885 | java-maintainer-clean) Updated. | |
3886 | ||
eec87542 HB |
3887 | 2001-12-14 Hans Boehm <Hans_Boehm@hp.com> |
3888 | ||
3889 | * class.c (get_dispatch_table): Fix java vtable layout | |
3890 | for TARGET_VTABLE_USES_DESCRIPTORS. | |
3891 | * decl.c (java_init_decl_processing): Initialize | |
3892 | alloc_no_finalizer_node, finalize_identifier_node. | |
3893 | * expr.c (class_has_finalize_method): New function. | |
3894 | (expand_java_NEW): Generate calls for finalizer-free allocation. | |
3895 | (build_invokevirtual): Fix java vtable layout for | |
3896 | TARGET_VTABLE_USES_DESCRIPTORS. | |
e1886ae0 | 3897 | * java-tree.h (enum java_tree_index): New entries: |
eec87542 HB |
3898 | JTI_ALLOC_NO_FINALIZER_NODE, JTI_FINALIZE_IDENTIFIER_NODE. |
3899 | (alloc_no_finalizer_node, finalize_deintifier_node): New macros. | |
3900 | (class_has_finalize_method): declare. | |
3901 | (HAS_FINALIZER_P): New macro. | |
3902 | * parse.y (patch_invoke): Generate calls for finalizer-free | |
3903 | allocation. | |
3904 | ||
81deb0a3 MK |
3905 | 2001-12-12 Matthias Klose <doko@debian.org> |
3906 | ||
3907 | * Make-lang.in: JAVA_INSTALL_NAME, JAVA_CROSS_NAME: Remove | |
3908 | whitespace at end of line. | |
3909 | ||
34026199 TT |
3910 | 2001-12-11 Tom Tromey <tromey@redhat.com> |
3911 | ||
3912 | * lex.c (java_init_lex): Define wfl_to_string as | |
3913 | gnu.gcj.runtime.StringBuffer unless generating bytecode. | |
3914 | ||
a3bcfa67 JS |
3915 | 2001-12-11 Jeff Sturm <jsturm@one-point.com> |
3916 | ||
3917 | * class.c (make_method_value): Use null_pointer_node to | |
3918 | represent empty exception table. | |
3919 | ||
3afdfae8 TT |
3920 | 2001-12-10 Tom Tromey <tromey@redhat.com> |
3921 | ||
3922 | * check-init.c (check_init) [SWITCH_EXPR]: Use SWITCH_HAS_DEFAULT. | |
3923 | ||
62c9aa5f | 3924 | 2001-12-10 Douglas B. Rupp <rupp@gnat.com> |
96a9c44f DR |
3925 | |
3926 | * Make-lang.in (jvspec.o): Add $(OUTPUT_OPTION). | |
3927 | ||
a5cb134d PB |
3928 | 2001-12-09 Per Bothner <per@bothner.com> |
3929 | ||
3930 | * check-init.c (current_switch_has_default): New static field. | |
3931 | (check_init): Case DEFAULT_EXPR: Set current_switch_has_default. | |
3932 | Case SWITCH_EXPR: Save/restore current_switch_has_default. If no | |
3933 | DEFAULT_EXPR seen, simulate a default alternative that copies state. | |
3934 | ||
1aca9b81 TT |
3935 | 2001-12-09 Tom Tromey <tromey@redhat.com> |
3936 | ||
3937 | * check-init.c (check_init): Don't allow pre- or post- increment | |
3938 | or decrement of final variable. | |
3939 | (final_assign_error): Minor error message rewording. | |
3940 | ||
4440ffc4 TT |
3941 | 2001-12-08 Tom Tromey <tromey@redhat.com> |
3942 | ||
0854b1c4 TT |
3943 | * java-tree.h: Fixed typo. |
3944 | ||
5fcab235 TT |
3945 | * gjavah.c (decompile_method): Don't decompile to `return this' |
3946 | for static methods. | |
3947 | ||
7b35f6c9 TT |
3948 | * gjavah.c (cxx_keywords): Re-sorted. |
3949 | * lex.c (cxx_keywords): Re-sorted. | |
3950 | ||
897c9e66 TT |
3951 | * gjavah.c (HANDLE_METHOD): Set `decompiled' before doing anything |
3952 | else. | |
3953 | ||
4440ffc4 TT |
3954 | * gjavah.c (print_namelet): Clear subnamelets. |
3955 | (HANDLE_METHOD): Set `method_printed' earlier. | |
3956 | ||
8f25dc28 TT |
3957 | 2001-12-07 Tom Tromey <tromey@redhat.com> |
3958 | ||
3959 | * lang.c (lang_f_options): Added | |
3960 | optimize-static-class-initialization. | |
3961 | (java_decode_option): Removed special case. | |
3962 | ||
a9040c77 PB |
3963 | 2001-12-07 Per Bothner <per@bothner.com> |
3964 | ||
3965 | * check-init.c (check_init): Fix typo freeing memory twice. | |
3966 | ||
5412ef6b PB |
3967 | 2001-12-05 Per Bothner <per@bothner.com> |
3968 | ||
3969 | Restore support for static class initialization optimization. | |
3970 | * java-tree.h (STATIC_CLASS_INIT_OPT_P): Re-enable. | |
3971 | * check-init.c (check_int): At end of BLOCK handle initialization | |
3972 | blocks, which used to be done in java_complete_expand_method but did | |
3973 | not handle the case where check_for_initialization might allocate | |
3974 | more than a word of bits. | |
3975 | * decl.c (lang_make_tree): The smic field is now a tree. | |
3976 | * expr.c (build_class_init): Set DECL_FUNCTION_INIT_TEST_CLASS field. | |
3977 | * java-tree.h (DECL_FUNCTION_INIT_TEST_TABLE): New macro. | |
3978 | ||
3979 | * parse.y (emit_test_initialization): Combine hash_lookup calls. | |
3980 | ||
3981 | * java-tree.h (DECL_FUNCTION_STATIC_METHOD_INVOCATION_COMPOUND): | |
3982 | Change from a hash table to a list. | |
3983 | (struct_lang_decl): Change field 'smic' to match. | |
3984 | * class.c (add_method_1): Initialize | |
3985 | DECL_FUNCTION_STATIC_METHOD_INVOCATION_COMPOUND to null list. | |
3986 | * parse.y (adjust_init_test_initialization): Removed - inlined into - | |
3987 | (java_expand_method_bodies): -here, since 'smic' is now a list. | |
3988 | (patch_invoke): Add to 'smic' list, instead of hash_lookup. | |
3989 | ||
3990 | * check-init.c (WORD_SIZE): Use BITS_PER_UNIT. | |
3991 | ||
3992 | * class.c (java_hash_compare_tree_node): Fix casts. | |
3993 | ||
4f88ccda PB |
3994 | 2001-12-04 Per Bothner <per@bothner.com> |
3995 | ||
3996 | * check-init.c: Handle definite unassignment to finals in addition | |
3997 | to definite assignment. | |
3998 | (loop_current_locals): New field. | |
3999 | (num_current_locals, int start_current_locals, num_current_words): | |
4000 | Make static. | |
4001 | (SET_P, CLEAR_P, SET_BIT): Add needed but missing parentheses. | |
4002 | (ASSIGNED_P, UNASSIGNED_P, SET_ASSIGNED, SET_UNASSIGNED, | |
4003 | CLEAR_ASSIGNED, CLEAR_UNASSIGNED): New macros. | |
4004 | (get_variable_decl, check_final_reassigned): New functions. | |
4005 | (check_init, check_bool_init): Modify as needed for checking finals. | |
4006 | (check_for_initialization): Take extra parameter and return void. | |
4007 | Do extra start-up logic to check final fields for assignment. | |
4008 | * parse.y (check_static_final_variable_assignment_flag, | |
4009 | reset_static_final_variable_assignment_flag, check_final_assignment, | |
4010 | check_final_variable_local_assignment_flag, | |
4011 | reset_final_variable_indirect_assignment_flag, | |
4012 | reset_final_variable_global_assignment_flag): Remove functions. | |
4013 | (java_complete_expand_methods, outer_field_access_fix, | |
4014 | patch_assignment): Remove no-longer used logic. | |
4015 | * java-tree.h (DECL_FIELD_FINAL_IUD): Change usage and comments. | |
4016 | * parse.y (register_fields, java_complete_tree): Update accordingly. | |
4017 | ||
4018 | * check-init.c (ALLOC_WORDS/FREE_WORDS): Use xmalloc/free, not alloca. | |
4019 | (DECLARE_BUFFERS, RELEASE_BUFFERS, ALLOC_BUFFER, FREE_BUFFER): New. | |
4020 | (check_cond_init, check_bool2_init): Use DECLARE_BUFFERS. | |
4021 | ||
4022 | * java-tree.h (STATIC_CLASS_INIT_OPT_P): Temporarily turn off. | |
4023 | ||
4024 | * java-tree.h (DECL FINAL): New bit-field. | |
4025 | (METHOD_FINAL, FIELD_FINAL, CLASS_FINAL): Define as DECL_FINAL. | |
4026 | (LOCAL_FINAL_P): Use DECL_FINAL rather than old LOCAL_FINAL. | |
4027 | (DECL_INIT_CALLS_THIS): New macro. | |
4028 | (struct lang_decl): New bit-field init_calls_this. | |
4029 | (DECL_FUNCTION_ALL_FINAL_INITIALIZED, DECL_FIELD_FINAL_LIIC, | |
4030 | DECL_FIELD_FINAL_IERR, LOCAL_FINAL, TYPE_HAS_FINAL_VARIABLE | |
4031 | (DECL_BIT_INDEX): Change to use pointer_alias_set since we now | |
4032 | use it for both local variables and final fields. | |
4033 | (struct lang_decl_var): Remove bit-fields final_liic, final_ierr, | |
4034 | and local_final. | |
4035 | (struct lang_type): Remove hfv bit-field. | |
4036 | (check_for_initialization): Change to return void. | |
4037 | ||
4038 | * java-tree.h (IS_ARRAY_LENGTH_ACCESS): New macros. | |
4039 | * expr.c (build_java_array_length_access): Set IS_ARRAY_LENGTH_ACCESS. | |
4040 | * check-init.c (final_assign_error): New helper function. | |
4041 | (check_final_reassigned, check_init): Use it. | |
4042 | (check_init): Also check IS_ARRAY_LENGTH_ACCESS for ARRAY.length. | |
e1886ae0 | 4043 | |
4f88ccda PB |
4044 | * java-tree.h (struct lang_decl, struct lang_decl_var): Change all |
4045 | bit-fields to unsigned. | |
4046 | ||
87d4ad08 PB |
4047 | 2001-12-03 Per Bothner <per@bothner.com> |
4048 | ||
4049 | * parse.y (patch_binop): Minor constant folding. | |
4050 | ||
4051 | * parse.y (build_current_thisn): Shorter 'buffer'. | |
4052 | ||
aedcdb65 PB |
4053 | 2001-12-03 Per Bothner <per@bothner.com> |
4054 | ||
4055 | * decl.c (complete_start_java_method): Now generate TRY_FINALLY_EXPR | |
4056 | instead of CLEANUP_POINT_EXPR and WITH_CLEANUP_EXPR. | |
4057 | * jcf-write.c (generate_bytecode_insns): Remove support for | |
4058 | CLEANUP_POINT_EXPR and WITH_CLEANUP_EXPR as they are no longer used. | |
4059 | * check-init.c (check_init): Likewise. | |
4060 | ||
82ff672e PB |
4061 | 2001-12-03 Per Bothner <per@bothner.com> |
4062 | ||
4063 | * verify.c (subroutine_nesting): New function. | |
4064 | (verify_jvm_instructions): Use it to fix logic for checking that | |
4065 | we're done with the current subroutine. | |
4066 | ||
4067 | * verify.c (verify_jvm_instruction): For OPCODE_checkcast and | |
4068 | OPCODE_instanceof use POP_TYPE macro for better diagnostics. | |
4069 | ||
98a63868 PB |
4070 | 2001-12-03 Per Bothner <per@bothner.com> |
4071 | ||
4072 | * jcf.h: Fix obvious typo in comment. | |
4073 | * typeck.c (build_null_signature): Add comment. | |
4074 | ||
c725bd79 NB |
4075 | 2001-12-03 Neil Booth <neil@daikokuya.demon.co.uk> |
4076 | ||
4077 | * expr.c: Remove leading capital from diagnostic messages, as | |
4078 | per GNU coding standards. | |
4079 | * jcf-io.c: Similarly. | |
4080 | * jcf-parse.c: Similarly. | |
4081 | * jv-scan.c: Similarly. | |
4082 | * jvspec.c: Similarly. | |
4083 | * mangle.c: Similarly. | |
4084 | ||
b736dee6 TCH |
4085 | 2001-12-02 Tang Ching-Hui <nicholas@cs.nthu.edu.tw> |
4086 | Alexandre Petit-Bianco <apbianco@redhat.com> | |
4087 | ||
e1886ae0 | 4088 | * expr.c (build_java_arrayaccess): Call save_expr on array for |
7e5f4bee | 4089 | correct evaluation order, modified comment, fixed indentation. |
b736dee6 TCH |
4090 | * parse.y: (patch_assignment): Correctly extract the array base |
4091 | from the tree generate by build_java_arrayaccess, added comments. | |
4092 | (patch_array_ref): Remove SAVE_EXPR on ARRAY_REF. | |
4093 | Fixes PR java/3096, PR java/3803, PR java/3965. | |
4094 | ||
357351e5 NB |
4095 | 2001-12-01 Neil Booth <neil@daikokuya.demon.co.uk> |
4096 | ||
4097 | * expr.c (expand_byte_code): Remove trailing periods from messages. | |
4098 | * jcf-parse.c (load_class, jcf_parse): Similarly. | |
4099 | * jcf-write.c (generate_classfile): Similarly. | |
4100 | * lex.c (java_lex): Similarly. | |
4101 | ||
a7c5337d BM |
4102 | 2001-11-30 Bryce McKinlay <bryce@waitaki.otago.ac.nz> |
4103 | ||
4104 | * class.c (add_interface_do): Set BINFO_VPTR_FIELD. | |
4105 | ||
d3945f0a JM |
4106 | 2001-11-29 Joseph S. Myers <jsm28@cam.ac.uk> |
4107 | ||
4108 | * Make-lang.in (java.generated-manpages): New dummy target. | |
4109 | ||
b856c15d RO |
4110 | 2001-11-27 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> |
4111 | ||
4112 | * jvspec.c (jvgenmain_spec): Cannot use %umain, breaks | |
4113 | ASM_FINAL_SPEC. | |
4114 | (lang_specific_pre_link): Use set_input to set input_filename. | |
4115 | Append `main' here. | |
4116 | * jvgenmain.c (usage): Append literal `main' to CLASSNAME. | |
4117 | (main): Fix definition. | |
4118 | Strip `main' from classname. | |
4119 | Fixes PR java/227. | |
4120 | ||
9c2fcf09 RS |
4121 | 2001-11-18 Roger Sayle <roger@eyesopen.com> |
4122 | ||
4123 | * parse.h (java_expand_switch): Remove old prototype. | |
4124 | ||
8aeb42d0 TT |
4125 | 2001-11-18 Tom Tromey <tromey@redhat.com> |
4126 | ||
4127 | Fix for PR java/1401: | |
4128 | * jcf-write.c (generate_bytecode_insns) [binop]: Handle case where | |
4129 | arg0 is null. | |
4130 | (generate_bytecode_insns) [MODIFY_EXPR]: Handle `OP=' case | |
4131 | correctly. | |
4132 | ||
22703ccc NB |
4133 | 2001-11-18 Neil Booth <neil@daikokuya.demon.co.uk> |
4134 | ||
4135 | * lang.c (finish_parse): Rename to java_finish. | |
4136 | (LANG_HOOKS_FINISH, java_finish): New. | |
4137 | ||
f5e99456 NB |
4138 | 2001-11-15 Neil Booth <neil@daikokuya.demon.co.uk> |
4139 | ||
4140 | * decl.c (init_decl_processing): Rename java_init_decl_processing. | |
4141 | * java-tree.h: New prototype. | |
4142 | * lang.c (java_init): Update prototype. Combine with old init_parse. | |
4143 | ||
150f086d TT |
4144 | 2001-11-13 Tom Tromey <tromey@redhat.com> |
4145 | ||
4146 | * gjavah.c (method_signature): New global. | |
4147 | (HANDLE_METHOD): Set it. | |
4148 | (decompile_return_statement): New function. | |
4149 | (decompile_method): Use it. | |
4150 | (print_method_info): Removed `synth' argument. | |
4151 | ||
5d69f816 NB |
4152 | 2001-11-09 Neil Booth <neil@daikokuya.demon.co.uk> |
4153 | ||
4154 | * java-tree.h (java_set_yydebug): New. | |
4155 | * jcf-parse.c (set_yydebug): Rename java_set_yydebug. | |
4156 | * lang.c (LANG_HOOKS_SET_YYDEBUG): Override. | |
4157 | (print_lang_decl, print_lang_type, print_lang_identifier, | |
4158 | print_lang_statistics, lang_print_xnode): Remove. | |
4159 | ||
3ac88239 NB |
4160 | 2001-11-09 Neil Booth <neil@daikokuya.demon.co.uk> |
4161 | ||
4162 | * jcf-parse.c (init_lex): Remove. | |
4163 | * lang.c (language_string, lang_identify): Remove. | |
4164 | (struct lang_hooks): Constify. | |
4165 | (LANG_HOOKS_NAME): Override. | |
4166 | (init_parse): Update. | |
4167 | ||
b21d216c AF |
4168 | 2001-11-08 Andreas Franck <afranck@gmx.de> |
4169 | ||
e1886ae0 | 4170 | * Make-lang.in (JAVA_INSTALL_NAME, JAVA_CROSS_NAME): Handle |
b21d216c AF |
4171 | program_transform_name the way suggested by autoconf. |
4172 | (java.install-common): Also transform auxiliary program names with | |
4173 | program_transform_name. | |
4174 | ||
1fa73144 TT |
4175 | 2001-11-08 Tom Tromey <tromey@cygnus.com> |
4176 | ||
4177 | * parse.y (trap_overflow_corner_case): New rule. | |
4178 | (unary_expression): Use it. | |
4179 | * lex.c (java_init_lex): Don't set minus_seen. | |
4180 | (yylex): Don't use minus_seen. Communicate overflow to parser for | |
4181 | it to handle. | |
4182 | (error_if_numeric_overflow): New function. | |
4183 | * parse.h (minus_seen): Removed field. | |
4184 | (JAVA_RADIX10_FLAG): New define. | |
4185 | ||
5a21a051 TT |
4186 | 2001-11-07 Tom Tromey <tromey@redhat.com> |
4187 | ||
4188 | Patch for PR java/1414: | |
4189 | * parse.y (case_label_list): New global. | |
4190 | (goal): Register case_label_list with GC. | |
4191 | (java_complete_lhs): Save new case on case_label_list. | |
4192 | (patch_switch_statement): Check for duplicate case labels. | |
4193 | ||
5573cb39 APB |
4194 | 2001-11-07 Alexandre Petit-Bianco <apbianco@redhat.com> |
4195 | ||
4196 | * parse.y (patch_assignment): Removed unused third argument. | |
4197 | (java_complete_lhs): Removed unused third argument to patch_assignment. | |
4198 | ||
d23c55c2 NB |
4199 | 2001-11-06 Neil Booth <neil@cat.daikokuya.demon.co.uk> |
4200 | ||
4201 | * lang.c: Include langhooks-def.h. | |
4202 | * Make-lang.in: Update. | |
4203 | ||
5b7874aa ZW |
4204 | 2001-10-31 Zack Weinberg <zack@codesourcery.com> |
4205 | ||
4206 | * Make-lang.in: Replace $(INTL_TARGETS) with po-generated. | |
4207 | ||
2b472f91 BM |
4208 | 2001-10-29 Bryce McKinlay <bryce@waitaki.otago.ac.nz> |
4209 | ||
4210 | * mangle.c (find_compression_record_match): Don't match compression | |
4211 | records for package name elements unless they occur at the start of | |
4212 | the name. Fix for PR java/4717. | |
4213 | ||
961b8e70 BM |
4214 | 2001-10-25 Bryce McKinlay <bryce@waitaki.otago.ac.nz> |
4215 | ||
4216 | * expr.c (expand_java_field_op): Don't special-case references to | |
4217 | java.lang.PRIMTYPE.TYPE. | |
4218 | (build_primtype_type_ref): Removed. | |
4219 | * java-tree.h (build_primtype_type_ref): Remove prototype. | |
4220 | * parse.y (maybe_build_primttype_type_ref): Removed. | |
4221 | (complete_function_arguments): Don't special-case references to | |
4222 | java.lang.PRIMTYPE.TYPE. | |
4223 | (patch_assignment): Likewise. | |
4224 | (array_constructor_check_entry): Likewise. | |
4225 | ||
98f705b9 APB |
4226 | 2001-10-24 Alexandre Petit-Bianco <apbianco@redhat.com> |
4227 | ||
4228 | * mangle.c (static tree compression_table): Fixed leading comment. | |
4229 | * parse.h (struct parser_ctxt): Fixed field comment. | |
4230 | * parse.y (check_pkg_class_access): New prototype, fixed leading | |
4231 | comment, new parameter used to emit error only if passed as true. | |
4232 | (parse_check_super): Pass extra argument to check_pkg_class_access. | |
4233 | (do_resolve_class): Likewise. | |
4234 | (process_imports): Likewise. | |
4235 | (read_import_dir): Fixed indentation. | |
4236 | (find_in_imports_on_demand): New local class_type_name. Local | |
4237 | node_to_use deleted. while loop changed into for loop. Report | |
4238 | multiple definition only for accessible classes. Improved error | |
4239 | message. | |
4240 | (start_complete_expand_method): Local `ptr' removed. DECL_ARGUMENTS | |
4241 | assigned to parameter list, fixed indentation. while loop changed | |
4242 | into for loop, restore TREE_CHAIN on local `tem' before the next | |
4243 | iteration. | |
4244 | ||
62c9aa5f | 4245 | 2001-10-23 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
8ac61af7 RK |
4246 | |
4247 | * lang.c (lang_get_alias_set): Deleted. | |
4248 | ||
0df6c2c7 KG |
4249 | 2001-10-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
4250 | ||
299b5f9e KG |
4251 | * gjavah.c (jni_print_char): Fix thinko in last change. |
4252 | ||
0df6c2c7 KG |
4253 | * gjavah.c (jni_print_char, decode_signature_piece): Use |
4254 | safe-ctype macros and/or fold extra calls into fewer ones. | |
4255 | * lex.c (java_read_unicode, java_lex): Likewise. | |
4256 | * lex.h (JAVA_START_CHAR_P, JAVA_PART_CHAR_P, JAVA_ASCII_DIGIT, | |
4257 | JAVA_ASCII_HEXDIGIT, JAVA_ASCII_LETTER): Likewise. | |
4258 | * mangle_name.c (append_unicode_mangled_name, | |
4259 | unicode_mangling_length): Likewise. | |
4260 | ||
17ed6335 RH |
4261 | 2001-10-17 Richard Henderson <rth@redhat.com> |
4262 | ||
4263 | * Make-lang.in (java/lang.o): Depend on langhooks.h. | |
4264 | ||
c83303d8 APB |
4265 | 2001-10-15 Alexandre Petit-Bianco <apbianco@redhat.com> |
4266 | ||
4267 | * lang.c (langhooks.h): Included. | |
4268 | (LANG_HOOKS_INIT): Redefined. | |
4269 | (LANG_HOOKS_INIT_OPTIONS): Likewise. | |
4270 | (LANG_HOOKS_DECODE_OPTION): Likewise. | |
4271 | (struct lang_hooks lang_hooks): New initialization. | |
4272 | ||
be98560f PB |
4273 | 2001-10-11 Per Bothner <per@bothner.com> |
4274 | ||
89b894e1 PB |
4275 | * parse.y (patch_synchronized_statement): Use a TRY_FINALLY_EXPR |
4276 | rather than a CLEANUP_POINT_EXPR/WITH_CLEANUP_EXPR pair. | |
4277 | The former is simpler, and jcf-write.c handles it better. | |
4278 | (java_complete_lhs): No longer need to handle CLEANUP_POINT_EXPR | |
4279 | or WITH_CLEANUP_EXPR. | |
4280 | * jcf-write.c: Revert Alex's change from 2000-10-18. It is no | |
4281 | longer needed, as we already handle empty TRY_FINALLY_EXPR bodies fine. | |
4282 | ||
be98560f PB |
4283 | * parse.y (patch_if_else_statement): If the condition is constant, |
4284 | optimize away the test. | |
4285 | ||
3fb5c0eb APB |
4286 | 2001-10-09 Alexandre Petit-Bianco <apbianco@redhat.com> |
4287 | ||
4288 | * parse.y (patch_cast): Call patch_string on the first operand of | |
c83303d8 | 4289 | the incoming node, update it if necessary. Fixes PR java/4510. |
3fb5c0eb | 4290 | |
908fecca BM |
4291 | 2001-10-09 Bryce McKinlay <bryce@waitaki.otago.ac.nz> |
4292 | ||
4293 | * parse.y (find_as_inner_class): Don't disregard the enclosing scope | |
4294 | when name qualifier matches a package name. | |
4295 | ||
f3ca28bf TT |
4296 | 2001-10-08 Tom Tromey <tromey@redhat.com> |
4297 | ||
4298 | Fix for PR java/4489: | |
4299 | * jcf-write.c (generate_bytecode_insns) [SWITCH_EXPR]: Always | |
4300 | force a new label when computing `body_block'. | |
4301 | ||
8b60264b KG |
4302 | 2001-10-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
4303 | ||
4304 | * jcf-io.c (format_uint): Const-ify. | |
4305 | * lang.c (java_tree_code_type, java_tree_code_length): Likewise. | |
4306 | * lex.c (java_get_line_col): Likewise. | |
4307 | * parse.y (build_incdec): Likewise. | |
4308 | ||
3fb5c0eb APB |
4309 | 2001-10-05 Alexandre Petit-Bianco <apbianco@redhat.com> |
4310 | ||
4311 | * parse.y (register_incomplete_type): Set JDEP_SUPER to be given | |
c83303d8 | 4312 | a NULL enclosing context if appropriate. Fixes PR java/4466. |
3fb5c0eb | 4313 | |
7754e0a9 APB |
4314 | 2001-10-03 Alexandre Petit-Bianco <apbianco@redhat.com> |
4315 | ||
4316 | * parse.y (patch_assignment): Use lvalue's original TYPE when | |
4317 | building the final COMPOUND_EXPR. | |
4318 | (try_reference_assignconv): Fixed leading comment. | |
4319 | ||
e9546ca4 APB |
4320 | 2001-09-26 Alexandre Petit-Bianco <apbianco@redhat.com> |
4321 | ||
4322 | * parse.y (check_final_variable_indirect_assignment): For | |
4323 | COMPOUND_EXPR, return only if finals were found initialized | |
4324 | properly, if not, keep on checking. | |
4325 | (check_final_variable_global_assignment_flag): New local | |
4326 | error_found, set when appropriate and used to decide whether to | |
4327 | report uninitialized finals. Fixed typo in comment. | |
4328 | ||
f6a67a81 APB |
4329 | 2001-09-22 Alexandre Petit-Bianco <apbianco@redhat.com> |
4330 | ||
4331 | * decl.c (init_decl_processing): Fixed typo in predef_filenames | |
4332 | last three initializations. Fixes PR java/4360. | |
4333 | ||
67231816 RH |
4334 | 2001-09-21 Richard Henderson <rth@redhat.com> |
4335 | ||
4336 | * class.c (get_dispatch_table): Handle function descriptors. | |
4337 | (build_dtable_decl): Likewise. | |
4338 | * expr.c (build_invokevirtual): Likewise. | |
4339 | ||
870a5b8a APB |
4340 | 2001-09-20 Alexandre Petit-Bianco <apbianco@redhat.com> |
4341 | ||
4342 | * parse.y (patch_method_invocation): Build class initialization | |
4343 | when static finals are used to qualify method invocation. | |
4344 | Fixes PR java/4366. | |
4345 | ||
2e3b2d2c APB |
4346 | 2001-09-19 Alexandre Petit-Bianco <apbianco@redhat.com> |
4347 | ||
4348 | * parse.h: (WFL_STRIP_BRACKET): Re-written using | |
4349 | build_type_name_from_array_name. | |
4350 | (STRING_STRIP_BRACKETS): New macro. | |
4351 | * parse.y (build_type_name_from_array_name): New function. | |
4352 | (array_creation_expression:): Accumulate []s instead of [s. | |
4353 | (cast_expression:): Accumulate []s instead of [s after cast type | |
4354 | name. | |
4355 | (build_array_from_name): Local string deleted, use | |
4356 | build_type_name_from_array_name. | |
4357 | (build_unresolved_array_type): Accumulate []s instead of [s after | |
4358 | type name. | |
4359 | (register_fields): Fixed comment. | |
4360 | (resolve_class): Local name, base deleted, new locals tname and | |
4361 | array_dims. Use build_type_name_from_array_name. Use array_dims to | |
4362 | build array type. | |
4363 | (purify_type_name): Use STRING_STRIP_BRACKETS. | |
4364 | ||
e64c46ce AJ |
4365 | 2001-09-18 Andreas Jaeger <aj@suse.de> |
4366 | ||
4367 | * parse.y: Use VA_OPEN/VA_CLOSE/VA_FIXEDARG throughout. | |
4368 | * jv-scan.c: Likewise. | |
4369 | ||
3fb5c0eb APB |
4370 | 2001-09-17 Alexandre Petit-Bianco <apbianco@redhat.com> |
4371 | ||
4372 | * parse.y (patch_method_invocation): Inner class creation context | |
4373 | check not enforced within constructors. Fixes PR java/1873. | |
4374 | ||
7a91449c TT |
4375 | 2001-09-16 Tom Tromey <tromey@redhat.com> |
4376 | ||
4377 | * jcf-write.c (generate_bytecode_insns) [SWITCH_EXPR]: Call | |
4378 | NOTE_PUSH for single-case push. Fixes PR java/4189. | |
4379 | ||
653d5d95 APB |
4380 | 2001-09-13 Alexandre Petit-Bianco <apbianco@redhat.com> |
4381 | ||
4382 | * java-tree.h (TYPE_IMPORT_LIST): New macro. | |
4383 | (TYPE_IMPORT_DEMAND_LIST): Likewise. | |
4384 | (struct lang_type): New fields import_list and import_demand_list. | |
4385 | * parse.y (java_complete_class): Initialize TYPE_IMPORT_LIST and | |
4386 | TYPE_IMPORT_DEMAND_LIST with ctxp counterparts. | |
4387 | (do_resolve_class): New local saved_enclosing_type, initialized, | |
4388 | passed as parameter to find_in_imports and find_in_imports_on_demand. | |
4389 | (find_in_imports): Added paramater enclosing_type, use its | |
4390 | TYPE_IMPORT_LIST when applicable. | |
4391 | (find_in_imports_on_demand): Added parameter enclosing_type, use | |
4392 | its TYPE_IMPORT_DEMAND_LIST when applicable. Reorganized locals | |
4393 | declaration and initialization. | |
4394 | (fold_constant_for_init): Switch/restore current_class to the | |
4395 | appropriate context. | |
4396 | ||
6d334db8 MM |
4397 | 2001-09-13 Mark Mitchell <mark@codesourcery.com> |
4398 | ||
4399 | * verify.c (verify_jvm_instructions): Fix typo. | |
4400 | ||
83182544 KG |
4401 | 2001-09-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
4402 | ||
4403 | * expr.c (expand_invoke): Const-ification. | |
4404 | * parse.y (patch_method_invocation): Likewise. | |
4405 | ||
fd033052 KG |
4406 | 2001-09-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
4407 | ||
4408 | * gjavah.c (cxx_keywords): Const-ification. | |
4409 | * keyword.gperf (java_keyword): Likewise. | |
4410 | * lang.c (java_tree_code_name): Likewise. | |
4411 | * lex.c (cxx_keywords): Likewise. | |
4412 | * parse.y (java_parser_context_suspend, merge_string_cste): Likewise. | |
4413 | ||
fcbc317f RH |
4414 | 2001-09-11 Richard Henderson <rth@redhat.com> |
4415 | ||
4416 | * parse.h (ctxp_for_generation): Mark extern. | |
4417 | ||
c347e68d RH |
4418 | 2001-09-10 Richard Henderson <rth@redhat.com> |
4419 | ||
4420 | * class.c (build_class_ref): Set DECL_EXTERNAL before make_decl_rtl. | |
4421 | ||
6a9f6727 MK |
4422 | 2001-09-07 Matt Kraai <kraai@alumni.carnegiemellon.edu> |
4423 | ||
4424 | * typeck.c (java_array_type_length, build_prim_array_type): | |
4425 | Represent empty arrays by NULL index. | |
4426 | ||
0ef02b2d APB |
4427 | 2001-09-06 Alexandre Petit-Bianco <apbianco@redhat.com> |
4428 | ||
4429 | * java-tree.h (compile_resource_file): Grouped with other prototypes. | |
e64c46ce | 4430 | * jvspec.c (lang_specific_driver): Removed unused local `ptr.' |
0ef02b2d | 4431 | |
f2767a67 AG |
4432 | 2001-09-06 Anthony Green <green@redhat.com> |
4433 | ||
4434 | * class.c (O_BINARY): Define if necessary. | |
4435 | (registerResource_libfunc): Declare. | |
4436 | (init_class_processing): Initilize registerResource_libfunc. | |
4437 | (compile_resource_file): New function. | |
4438 | * java-tree.h (resource_name): Declare. | |
4439 | (compile_resource_file): Declare. | |
4440 | * jcf-parse.c (yyparse): Handle compiling java resource files. | |
4441 | * lang.c (java_decode_option): Handle -fcompile-resource option. | |
4442 | * jvspec.c (lang_specific_driver): Handle -R flag for compiling | |
4443 | resource files. | |
4444 | * gcj.texi (Code Generation): Add documentation for -R flag. | |
4445 | ||
731866ba APB |
4446 | 2001-09-05 Alexandre Petit-Bianco <apbianco@redhat.com> |
4447 | ||
4448 | * jcf-write.c (generate_classfile): Issue an error in case of | |
4449 | field/initial value mismatch. | |
4450 | * parse.y (analyze_clinit_body): Keep <clinit> if an array is | |
4451 | being initialized and we're generating bytecode. | |
4452 | (java_complete_lhs): In MODIFY_EXPR section: added comments, | |
4453 | set DECL_INITIAL properly when appropriate. | |
4454 | Fixes PR java/4230 | |
4455 | Fixes PR java/4204 | |
4456 | ||
0286a91d PB |
4457 | 2001-09-01 Per Bothner <per@bothner.com> |
4458 | ||
4459 | * parse.y (maybe_yank_clinit): A field without an initializer is not | |
4460 | relevant. All initializers except static final and constant require | |
4461 | <clinit>, regardless of flag_emit_class_files. | |
4462 | ||
289b57ee PB |
4463 | 2001-08-31 Per Bothner <per@bothner.com> |
4464 | ||
67264b4f | 4465 | * class.c (set_constant_value): When not emitting class files, then a |
289b57ee PB |
4466 | String ConstantValue is a utf8const_ptr_type. |
4467 | ||
be0c7ff4 PB |
4468 | 2001-08-30 Per Bothner <per@bothner.com> |
4469 | ||
4470 | * jcf-write.c (generate_classfile): Check that field is primitive | |
4471 | or string before emitting ConstantValue attribute. | |
e64c46ce | 4472 | |
f0cdee96 PB |
4473 | 2001-08-30 Per Bothner <per@bothner.com> |
4474 | ||
4475 | * parse.y (resolve_qualified_expression_name): If creating a | |
4476 | COMPOUND_EXPR, set it's type correctly. | |
4477 | ||
bc8a5e56 PB |
4478 | 2001-08-30 Per Bothner <per@bothner.com> |
4479 | ||
4480 | * jcf-io.c (open_class): Set filename field. | |
4481 | ||
4482 | * jcf-parse,c (parse_class_file): Set current_function_decl | |
4483 | for better error message when Code attribute is missing. | |
4484 | ||
4485 | * lang.c (put_decl_node, lang_print_error): Re-arrange for | |
4486 | better diagnostics, especially for constructors. | |
e64c46ce | 4487 | |
1b9ee723 PB |
4488 | 2001-08-30 Per Bothner <per@bothner.com> |
4489 | ||
4490 | * jcf-write.c (generate_classfile): Don't write ConstantValue | |
4491 | attribute if field is not final, for compatibility with jdk. | |
4492 | ||
4493 | * jcf-write.c (generate_classfile): Convert ConstantValue values | |
4494 | to correct type. Work-around for front-end bug. | |
4495 | * class.c (set_constant_value): Error if constant has wrong type. | |
4496 | ||
6e4302ec PB |
4497 | 2001-08-30 Per Bothner <per@bothner.com> |
4498 | ||
4499 | * jcf-dump.c (print_constant): Fix fencepost error so "Float" and | |
4500 | "Double" are printed at verbosity 1. | |
4501 | ||
4502 | * jcf-dump.c (main): Disable flag_print_attributes if --javap. | |
4503 | ||
4504 | * jcf-dump.c (SPECIAL_IINC): Remove unneeded casts to long. | |
4505 | ||
3ed218d4 APB |
4506 | 2001-08-30 Alexandre Petit-Bianco <apbianco@redhat.com> |
4507 | ||
4508 | * parse.y (patch_assignment): Don't verify final re-assignment here. | |
4509 | (java_complete_lhs): Verify assignments to finals calling | |
4510 | patch_assignment. Verify re-assignments to finals before calling | |
4511 | patch_assignment. | |
4512 | ||
4513 | 2001-08-29 Alexandre Petit-Bianco <apbianco@redhat.com> | |
4514 | ||
4515 | * parse.y (java_complete_lhs): Allow final locals in CASE_EXPRs. | |
4516 | Fixes PR java/1413 | |
4517 | ||
4518 | 2001-08-28 Alexandre Petit-Bianco <apbianco@redhat.com> | |
4519 | ||
4520 | * lex.c (java_lex): new local found_hex_digits. Set and then used | |
4521 | in test to reject invalid hexadecimal numbers. | |
4522 | * parse.y (java_complete_tree): Prevent unwanted cast with | |
4523 | initialized floating point finals. | |
4524 | (patch_binop): Emit a warning when detecting a division by zero, | |
4525 | mark result not constant, don't simplify non integer division. | |
4526 | ||
1a27eec1 PB |
4527 | 2001-08-28 Per Bothner <per@bothner.com> |
4528 | ||
4529 | * jcf-write.c (generate_bytecode_insns): For increments and | |
9a07cfaf | 4530 | decrements just recurse to push constant. Improvement on Mark's patch. |
1a27eec1 | 4531 | |
06657dcd MM |
4532 | 2001-08-28 Mark Mitchell <mark@codesourcery.com> |
4533 | ||
4534 | * jcf-write.c (generate_bytecode_insns): Generate an integer to | |
4535 | real conversion for increments and decrements of reals. | |
4536 | ||
1ca09b48 APB |
4537 | 2001-08-27 Alexandre Petit-Bianco <apbianco@redhat.com> |
4538 | ||
4539 | * parse.y (resolve_qualified_expression_name): Handle unresolved | |
4540 | qualified expressions, prevent numerical qualifiers, fixed typo. | |
4541 | Fixes PR java/4141 | |
4542 | ||
7b02957e APB |
4543 | 2001-08-24 Alexandre Petit-Bianco <apbianco@redhat.com> |
4544 | ||
4545 | * parse.y (check_deprecation): Handle TYPE_DECL in a special case, | |
4546 | don't report anything but deprecated class when marked so. Handle | |
4547 | VAR_DECL. | |
4548 | (patch_method_invocation): Check deprecation on methods and types. | |
4549 | (patch_binop): code becomes an enum tree_code, added default: to | |
4550 | switch to handle that. Detect division by zero, try to fold and | |
4551 | return before using a subroutine. | |
4552 | ||
496849ba APB |
4553 | 2001-08-23 Alexandre Petit-Bianco <apbianco@redhat.com> |
4554 | ||
4555 | * jcf-parse.c (yyparse): Set magic to 0, don't issue error for a | |
e64c46ce | 4556 | file smaller than 4 bytes. |
496849ba APB |
4557 | * parse.y (check_inner_circular_reference): New function. |
4558 | (check_circular_reference): Likewise. | |
4559 | (array_initializer:): Accept {,}. | |
4560 | (java_check_circular_reference): Rewritten using | |
4561 | check_circular_reference and check_inner_circular_reference. | |
4562 | (java_complete_expand_method): Unconditionally save and restore | |
4563 | the unpurged exception list. | |
4564 | (build_dot_class_method_invocation): Unmangle signature parameter. | |
4565 | ||
66b461ce TT |
4566 | 2001-08-21 Tom Tromey <tromey@redhat.com> |
4567 | ||
4568 | * decl.c (init_decl_processing): Add `throws' field to method | |
4569 | descriptor. | |
4570 | * class.c (make_method_value): Compute `throws' field for method. | |
4571 | ||
df1c5346 APB |
4572 | 2001-08-22 Alexandre Petit-Bianco <apbianco@redhat.com> |
4573 | ||
4574 | * parse.y (resolve_inner_class): Keep local_enclosing to NULL if | |
4575 | circularity is detected. | |
4576 | (ctors_unchecked_throws_clause_p): Fixed leading comment. | |
4577 | ||
c8af3574 RH |
4578 | 2001-08-17 Richard Henderson <rth@redhat.com> |
4579 | ||
4580 | * class.c (emit_register_classes): Add align parameter to | |
4581 | call to assemble_integer. | |
4582 | ||
17126208 APB |
4583 | 2001-08-16 Alexandre Petit-Bianco <apbianco@redhat.com> |
4584 | ||
4585 | * jcf-parse.c (load_class): New locals saved and class_loaded. If | |
4586 | loading a class_or_name fails, try considering an innerclass name | |
4587 | and load the enclosing context. | |
4588 | * parse.y (resolve_inner_class): New function. | |
4589 | (find_as_inner_class): Added leading comment. | |
4590 | (register_incomplete_type): Keep the current context as enclosing | |
4591 | context for JDEP_FIELD dependencies. | |
4592 | (do_resolve_class): Locals new_class_decl and super initialized to | |
4593 | NULL. Call resolve_inner_class, explore the enclosing context | |
4594 | superclass if necessary. | |
4595 | Fixes PR java/4007 | |
4596 | ||
4266d0b2 TT |
4597 | 2001-08-16 Tom Tromey <tromey@redhat.com> |
4598 | ||
4599 | * jcf-dump.c (main): Updated for change to jcf_path_seal. | |
4600 | * gjavah.c (main): Updated for change to jcf_path_seal. | |
4601 | * lang.c (version_flag): New global. | |
4602 | (java_decode_option): Recognize `-version'. | |
4603 | (java_init): Update for change to jcf_path_seal. | |
4604 | * jcf.h (jcf_path_seal): Added `print' argument. | |
4605 | * jcf-path.c (jcf_path_seal): Added `print' argument. | |
4606 | ||
e78d8e51 ZW |
4607 | 2001-08-13 Zack Weinberg <zackw@panix.com> |
4608 | ||
4609 | * Make-lang.in (java/decl.o): Update dependencies. | |
4610 | * decl.c: Include libfuncs.h, don't include toplev.h. | |
4611 | ||
17126208 APB |
4612 | 2001-08-12 Alexandre Petit-Bianco <apbianco@redhat.com> |
4613 | ||
4614 | * decl.c (init_decl_processing): exception_type_node, | |
4615 | class_not_found_type_node, and no_class_def_found_type_node | |
4616 | initialized. predef_filenames augmented accordingly. | |
4617 | instinit_identifier_node initialized. | |
4618 | * java-tree.def (INSTANCE_INITIALIZERS_EXPR): Entry removed. | |
4619 | * java-tree.h (enum java_tree_index): New entries | |
4620 | JTI_EXCEPTION_TYPE_NODE, JTI_CLASS_NOT_FOUND_TYPE_NODE, | |
4621 | JTI_NO_CLASS_DEF_FOUND_TYPE_NODE, JTI_INSTINIT_IDENTIFIER_NODE. | |
4622 | (exception_type_node): New macro. | |
4623 | (class_not_found_type_node): Likewise. | |
4624 | (no_class_def_found_type_node): Likewise. | |
4625 | (instinit_identifier_node): Likewise. | |
4626 | (PREDEF_FILENAMES_SIZE): Adjusted. | |
4627 | (TYPE_HAS_FINAL_VARIABLE): Fixed typo. | |
4628 | (struct lang_type): Fixed typo in bitfield name. | |
4629 | (DECL_INSTINIT_P): New macro. | |
4630 | (ID_INSTINIT_P): Likewise. | |
4631 | * jcf-write.c (generate_classfile): instinit$ bears the Synthetic | |
4632 | attribute. | |
4633 | * parse.y (encapsulate_with_try_catch): New function. | |
4634 | (generate_instinit): Likewise. | |
4635 | (build_instinit_invocation): Likewise. | |
4636 | (ctors_unchecked_throws_clause_p): Likewise. | |
4637 | (add_instance_initializer): Deleted. | |
4638 | (build_instance_initializer): Likewise. | |
4639 | (in_instance_initializer): Likewise. | |
4640 | (check_method_redefinition): instinit$ not to be verified. | |
4641 | (java_complete_expand_methods): Generate instinit$, simplified code. | |
4642 | (build_dot_class_method): Eliminated unnecessary locals. Use | |
4643 | encapsulate_with_try_catch, removed unnecessary code. | |
4644 | (fix_constructors): New local iii. Use build_instinit_invocation. | |
4645 | (patch_method_invocation): Added comment. | |
4646 | (maybe_use_access_method): Don't consider instinit$. | |
4647 | (find_applicable_accessible_methods_list): Shorten the search for | |
4648 | instinit$ too. | |
4649 | (java_complete_lhs): case INSTANCE_INITIALIZERS_EXPR removed. | |
4650 | (patch_return): Use DECL_INSTINIT_P instead of in_instance_initializer. | |
4651 | (patch_throw_statement): Likewise. Fixed typo. | |
e64c46ce | 4652 | |
6ba57472 DE |
4653 | 2001-08-12 David Edelsohn <edelsohn@gnu.org> |
4654 | ||
4655 | Revert: | |
4656 | 2001-08-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> | |
4657 | * jvspec.c (jvgenmain_spec): Cannot use %umain, breaks | |
4658 | ASM_FINAL_SPEC. | |
4659 | (lang_specific_pre_link): Use set_input to set input_filename. | |
4660 | Append `main' here. | |
4661 | * jvgenmain.c (usage): Append literal `main' to CLASSNAME. | |
4662 | (main): Fix definition. | |
4663 | Strip `main' from classname. | |
4664 | Fixes PR java/227. | |
4665 | ||
94aca342 ZW |
4666 | 2001-08-11 Zack Weinberg <zackw@panix.com> |
4667 | ||
4668 | * lex.h: Don't include setjmp.h. Don't define | |
4669 | SET_FLOAT_HANDLER or prototype set_float_handler. | |
4670 | ||
17126208 APB |
4671 | 2001-08-09 Alexandre Petit-Bianco <apbianco@redhat.com> |
4672 | ||
4673 | * expr.c (java_lang_expand_expr): Call `expand_end_bindings' and | |
4674 | `poplevel' in the right order. | |
4675 | ||
2cc07db4 RH |
4676 | 2001-08-09 Richard Henderson <rth@redhat.com> |
4677 | ||
4678 | * Make-lang.in (class.o): Depend on TARGET_H. | |
4679 | * class.c (emit_register_classes): Use target hooks instead of | |
4680 | assemble_constructor and assemble_destructor. | |
4681 | ||
4009bb7d APB |
4682 | 2001-08-08 Alexandre Petit-Bianco <apbianco@redhat.com> |
4683 | ||
4684 | * check-init.c (flags.h): Include | |
4685 | (check_init): Don't report uninitialized static class | |
4686 | initialization flags, don't free bit index when doing static class | |
4687 | initialization optimization. | |
4688 | (check_for_initialization): Return type changed to `unsigned int.' | |
4689 | (attach_initialized_static_class): New function. | |
4690 | * class.c (add_method_1): Create the initialized static class | |
4691 | table if necessary. | |
4692 | (finish_class): Always emit deferred inline methods. | |
4693 | * decl.c (emit_init_test_initialization): Moved to expr.c | |
4694 | (complete_start_java_method): Don't traverse | |
4695 | DECL_FUNCTION_INIT_TEST_TABLE. | |
4696 | (lang_mark_tree): Mark hash tables in function decls. | |
4697 | * expr.c (emit_init_test_initialization): Moved from decl.c. | |
4698 | (build_class_init): Create LAG_DECL_SPECIFIC for the static class | |
4699 | initialization flag, set DECL_CONTEXT and | |
4700 | LOCAL_CLASS_INITIALIZATION_FLAG. | |
4701 | (java_lang_expand_expr): Emit initialization code for static class | |
4702 | initialized flags when entering block, if necessary. | |
4703 | * gcj.texi (-fno-optimize-static-class-initialization): Documented. | |
4704 | * java-tree.h (flag_optimize_sci): New global variable declaration. | |
4705 | (DECL_FUNCTION_INITIALIZED_CLASS_TABLE): New macro. | |
4706 | (DECL_FUNCTION_STATIC_METHOD_INVOCATION_COMPOUND): Likewise. | |
4707 | (LOCAL_FINAL_P): Fixed typo in comment. | |
4708 | (FINAL_VARIABLE_P): Likewise. | |
4709 | (LOCAL_CLASS_INITIALIZATIO_FLAG): New macro. | |
4710 | (LOCAL_CLASS_INITIALIZATIO_FLAG_P): Likewise. | |
4711 | (struct lang_decl): New fields `ict', `smic' and `cif.' | |
4712 | (check_for_initialization): New returned value for global. | |
4713 | (attach_initialized_static_class): New global function. | |
4714 | (STATIC_CLASS_INIT_OPT_P): New macro. | |
4715 | * lang-options.h (-fno-optimize-static-class-initialization): New flag. | |
4716 | * lang.c (java_decode_option): Handle | |
4717 | `-fno-optimize-static-class-initialization' | |
4718 | * parse.y (start_complete_expand_method): New function. | |
4719 | (java_expand_method_bodies): Likewise. | |
4720 | (attach_init_test_initialization_flags): Likewise. | |
4721 | (adjust_init_test_initialization): Likewise. | |
4722 | (emit_test_initialization): Likewise. | |
4723 | (java_complete_expand_methods): Nullify abstract and native method | |
4724 | bodies. | |
4725 | (java_complete_expand_method): New locals `fbody', `block_body' | |
4726 | and `exception_copy.' Reorganized: directly return on empty method | |
4727 | bodies, call `start_complete_expand_method', remember definitely | |
4728 | initialized static class in function, don't expand method bodies. | |
4729 | (java_expand_classes): Call `java_expand_method_bodies' before | |
4730 | `finish_class' when compiling to native. | |
4731 | (resolve_expression_name): Use `orig' after building outer class | |
4732 | field access. | |
67264b4f | 4733 | (patch_invoke): Remember static method invocations. |
4009bb7d | 4734 | |
47907859 RH |
4735 | 2001-08-06 Richard Henderson <rth@redhat.com> |
4736 | ||
9a07cfaf | 4737 | * class.c (emit_register_classes): Pass a symbol_ref and priority |
47907859 RH |
4738 | to assemble_constructor. |
4739 | ||
36e10d77 APB |
4740 | 2001-08-02 Alexandre Petit-Bianco <apbianco@redhat.com> |
4741 | ||
4742 | * java-tree.h (all_class_filename): New macro. | |
4743 | (enum java_tree_index): New enum `JTI_ALL_CLASS_FILENAME.' | |
4744 | (BUILD_FILENAME_IDENTIFIER_NODE): Fixed leading comment. Link | |
4745 | newly created IDENTIFIER_NODE to `all_class_filename.' | |
4746 | ||
f2f25b6d JS |
4747 | 2001-08-01 Jeff Sturm <jsturm@one-point.com> |
4748 | ||
9a07cfaf RH |
4749 | * java-tree.h (BUILD_FILENAME_IDENTIFIER_NODE): |
4750 | Use ggc_add_tree_root to register roots. | |
e64c46ce | 4751 | |
6ad7895a APB |
4752 | 2001-07-31 Alexandre Petit-Bianco <apbianco@redhat.com> |
4753 | ||
4754 | * check-init.c (check_init): WITH_CLEANUP_EXPR node to use its | |
4755 | second operand calling check_init. | |
4756 | * decl.c (complete_start_java_method): Swaped second and third | |
4757 | arguments while creating WITH_CLEANUP_EXPR node. | |
4758 | * jcf-write.c (generate_bytecode_insns): Use second operand | |
4759 | instead of third when handling WITH_CLEANUP_EXPR. | |
4760 | * parse.y (java_complete_lhs): Expand second operand of | |
4761 | WITH_CLEANUP_EXPR nodes. | |
4762 | (patch_synchronized_statement): Swaped second and third arguments | |
4763 | while creating WITH_CLEANUP_EXPR node. | |
4764 | ||
9d7d8362 APB |
4765 | 2001-07-18 Alexandre Petit-Bianco <apbianco@redhat.com> |
4766 | ||
4767 | * parse.y (create_interface): Avoid cyclic inheritance report when | |
4768 | syntax error encountered during class definition. | |
4769 | Fixes PR java/2956 | |
4770 | ||
578672a2 RO |
4771 | 2001-08-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> |
4772 | ||
4773 | * jvspec.c (jvgenmain_spec): Cannot use %umain, breaks | |
4774 | ASM_FINAL_SPEC. | |
4775 | (lang_specific_pre_link): Use set_input to set input_filename. | |
4776 | Append `main' here. | |
4777 | * jvgenmain.c (usage): Append literal `main' to CLASSNAME. | |
4778 | (main): Fix definition. | |
4779 | Strip `main' from classname. | |
4780 | Fixes PR java/227. | |
4781 | ||
6a65ea5b TT |
4782 | 2001-07-18 Tom Tromey <tromey@redhat.com> |
4783 | ||
4784 | For PR java/2812: | |
4785 | * lex.h: Use HAVE_ICONV, not HAVE_ICONV_H. | |
4786 | * lex.c (java_new_lexer): Use ICONV_CONST. | |
4787 | (java_read_char): Likewise. | |
4788 | * Make-lang.in (jc1$(exeext)): Link against LIBICONV. | |
4789 | (jv-scan$(exeext)): Likewise. | |
4790 | ||
9d7d8362 APB |
4791 | 2001-07-17 Alexandre Petit-Bianco <apbianco@redhat.com> |
4792 | ||
4793 | * parse.h (INTERFACE_INNER_MODIFIERS): Disallow `private.' | |
4794 | * parse.y (check_class_interface_creation): Allow `private' if the | |
4795 | enclosing is not an interface. | |
4796 | (create_interface): Interface tagged public if the enclosing | |
4797 | context is an interface. | |
4798 | (create_class): Class tagged public if the enclosing context | |
4799 | is an interface. | |
4800 | Fixes PR java/2959 | |
4801 | ||
4802 | 2001-07-17 Alexandre Petit-Bianco <apbianco@redhat.com> | |
4803 | ||
4804 | * class.c (push_class): Set DECL_SIZE to `integer_zero_node.' | |
4805 | Fixes PR java/2665 | |
4806 | ||
e6290e74 TJ |
4807 | 2001-07-14 Tim Josling <tej@melbpc.org.au> |
4808 | ||
4809 | * check-init.c (check_init): Remove references to EXPON_EXPR. | |
4810 | ||
9d7d8362 APB |
4811 | 2001-07-13 Alexandre Petit-Bianco <apbianco@redhat.com> |
4812 | ||
4813 | * parse.y (java_complete_lsh): Set CAN_COMPLETE_NORMALLY and unset | |
4814 | TREE_CONSTANT_OVERFLOW of CASE_EXPR value. | |
4815 | Fixes PR java/3602 | |
4816 | ||
4b2dc1b2 TT |
4817 | 2001-07-13 Tom Tromey <tromey@redhat.com> |
4818 | ||
4819 | * jvspec.c (jvgenmain_spec): Remove -ffilelist-file from cc1 | |
4820 | invocation. | |
4821 | ||
b6e3e1ff APB |
4822 | 2001-07-12 Alexandre Petit-Bianco <apbianco@redhat.com> |
4823 | ||
4824 | * parse.y (patch_method_invocation): Don't override primary if one | |
4825 | is already provided, but let this$<n> be built. Fixed comment. | |
4826 | ||
4827 | 2001-07-12 Alexandre Petit-Bianco <apbianco@redhat.com> | |
4828 | ||
4829 | * parse.y (empty_statement:): Report empty statement error only | |
4830 | when found at class declaration level. | |
4831 | Fixes PR java/3635 | |
4832 | ||
a3cb5122 TT |
4833 | 2001-07-12 Tom Tromey <tromey@redhat.com> |
4834 | ||
4835 | * expr.c (expand_load_internal): New function. | |
4836 | (LOAD_INTERNAL): Use it. | |
4837 | ||
29fcdaae APB |
4838 | 2001-07-11 Alexandre Petit-Bianco <apbianco@redhat.com> |
4839 | ||
4840 | * parse.y (verify_constructor_super): Compare anonymous class ctor | |
4841 | args with `valid_method_invocation_conversion_p.' | |
4842 | Fixes PR java/3285 | |
4843 | ||
2df37a59 APB |
4844 | 2001-07-10 Alexandre Petit-Bianco <apbianco@redhat.com> |
4845 | ||
4846 | * lang-specs.h: Forbit the use if `-femit-class-file{s}' without | |
4847 | `-fsyntax-only.' Fixes PR java/3248 | |
4848 | ||
4849 | 2001-07-10 Alexandre Petit-Bianco <apbianco@redhat.com> | |
4850 | ||
4851 | * jcf-io.c (find_class): Clarified error message. Fixes PR java/2603 | |
4852 | ||
4853 | 2001-07-10 Alexandre Petit-Bianco <apbianco@redhat.com> | |
4854 | ||
4855 | * parse.h (INNER_ENCLOSING_SCOPE_CHECK): No `this' is fine if the | |
4856 | current function is static. Fixes PR java/1970 | |
4857 | ||
4858 | 2001-07-09 Alexandre Petit-Bianco <apbianco@redhat.com> | |
4859 | ||
4860 | * parse.y (patch_method_invocation): Add enclosing context to ctor | |
4861 | calls if necessary. Fixes PR java/2953 | |
4862 | ||
4863 | 2001-07-09 Alexandre Petit-Bianco <apbianco@redhat.com> | |
4864 | ||
4865 | * parse.y (resolve_package): Abort if qualified expression member | |
4866 | isn't right. | |
4867 | (qualify_ambiguous_name): Don't qualify as type if `this' in use. | |
4868 | Fixes PR java/1391 | |
4869 | ||
74d04dd1 ZW |
4870 | 2001-07-07 Zack Weinberg <zackw@stanford.edu> |
4871 | ||
4872 | * verify.c: Don't use // comments. | |
4873 | ||
af418b8c TT |
4874 | 2001-07-05 Tom Tromey <tromey@redhat.com> |
4875 | ||
4876 | * lang.c (flag_assume_compiled): Removed. | |
4877 | * java-tree.h (flag_assume_compiled): Removed. | |
4878 | * lang-options.h: Removed -ffile-list-file, -fuse-boehm-gc, | |
4879 | -fhash-synchronization, -fuse-divide-subroutine, | |
4880 | -fcheck-references, -femit-class-file, -femit-class-files, | |
4881 | -fassume-compiled. Updated --encoding information. Changed | |
4882 | -foutput-class-dir to `-d'. | |
4883 | ||
84a5b4f8 DB |
4884 | 2001-07-04 Daniel Berlin <dan@cgsoftware.com> |
4885 | ||
4886 | * jcf-parse.c (parse_class_file): Add lineno parameter to | |
4887 | debug_start_source_file call. | |
4888 | ||
0671eaf6 JM |
4889 | 2001-07-04 Joseph S. Myers <jsm28@cam.ac.uk> |
4890 | ||
4891 | * gcj.texi: Use gpl.texi. | |
4892 | * Make-lang.in ($(srcdir)/java/gcj.info, java/gcj.dvi): Update | |
4893 | dependencies and use doc/include in search path. | |
4894 | ||
9be7529d JS |
4895 | 2001-07-03 Jeff Sturm <jsturm@one-point.com> |
4896 | ||
4897 | * parse.y (fix_constructors): Test if a CALL_EXPR invokes | |
4898 | `this'. If so, don't build instance initializers. | |
4899 | ||
51e23701 APB |
4900 | 2001-07-03 Alexandre Petit-Bianco <apbianco@redhat.com> |
4901 | ||
4902 | * parse.y (resolve_expression_name): Improved error message for | |
2df37a59 | 4903 | inner class cases. Fixes PR java/1958 |
51e23701 | 4904 | |
46f018e1 GDR |
4905 | 2001-06-28 Gabriel Dos Reis <gdr@codesourcery.com> |
4906 | ||
4907 | * lang.c: #include diagnostic.h | |
4908 | (lang_print_error): Add a `diagnostic_context *' parameter. | |
4909 | (java_dummy_print): Likewise. | |
4910 | * Make-lang.in (JAVA_LEX_C): Depend on diagnostic.h | |
4911 | ||
51e23701 APB |
4912 | 2001-06-27 Alexandre Petit-Bianco <apbianco@redhat.com> |
4913 | ||
4914 | * jcf-parse.c (gcc_mark_jcf): Test for a finished JCF. | |
4915 | * jcf.h (typedef struct JCF): New bitfield `finished.' | |
4916 | (JCF_FINISH): Set `finished.' | |
4917 | (JCF_ZERO): Reset `finished.' | |
4918 | Fixes PR java/2633 | |
4919 | ||
4920 | 2001-06-27 Alexandre Petit-Bianco <apbianco@redhat.com> | |
4921 | ||
4922 | * parse.y (class_body_declaration:): Don't install empty instance | |
4923 | initializers. | |
4924 | Fixes PR java/1314 | |
4925 | ||
4a70e37e APB |
4926 | 2001-06-27 Alexandre Petit-Bianco <apbianco@redhat.com> |
4927 | ||
4928 | * class.c (set_super_info): Call `set_class_decl_access_flags.' | |
4929 | (set_class_decl_access_flags): New function. | |
4930 | * java-tree.h (set_class_decl_access_flags): New prototype. | |
4931 | * jcf-parse.c (handle_innerclass_attribute): Read and set access flags. | |
4932 | (parse_class_file): New local `decl_max_locals.' Take wide types | |
4933 | into account to compute DECL_MAX_LOCALS. | |
4934 | * parse.y (type_import_on_demand_declaration:): Ignore duplicate | |
4935 | imports on demand. | |
4936 | ||
561a0365 JM |
4937 | 2001-06-22 Jan van Male <jan.vanmale@fenk.wau.nl> |
4938 | ||
4939 | * zipfile.h: Use GCC_JCF_H instead of JCF_H. | |
4940 | ||
8e41c4f3 APB |
4941 | 2001-06-20 Alexandre Petit-Bianco <apbianco@redhat.com> |
4942 | ||
4943 | * class.c (java_hash_tree_node): Fixed indentation in leading comment. | |
4944 | * parse.y (do_resolve_class): Moved comments out to leading comment | |
4945 | section. Removed local `start', New local `_ht' and | |
4946 | `circularity_hash.' Record `enclosing' in hash table and search | |
4947 | it to detect circularity. Use `enclosing' as an argument to | |
4948 | `lookup_cl.' Free the hash table when done. | |
4949 | ||
c01b7cdf TT |
4950 | 2001-06-19 Tom Tromey <tromey@redhat.com> |
4951 | ||
4952 | * lex.c (java_read_char): Disallow invalid and overlong | |
4953 | sequences. Fixes PR java/2319. | |
4954 | ||
21a6bb3c JS |
4955 | 2001-06-05 Jeff Sturm <jsturm@one-point.com> |
4956 | ||
4957 | * decl.c (create_primitive_vtable): Don't call make_decl_rtl. | |
4958 | ||
0c90837b APB |
4959 | 2001-06-04 Alexandre Petit-Bianco <apbianco@redhat.com> |
4960 | ||
4961 | * expr.c (force_evaluation_order): Match wrapped ctor calls, locate | |
4962 | arguments accordingly. | |
4963 | ||
1347cc4f JM |
4964 | 2001-06-02 Joseph S. Myers <jsm28@cam.ac.uk> |
4965 | ||
4966 | * gcj.texi: Move contents to just after title page. | |
4967 | ||
12e248d6 APB |
4968 | 2001-06-01 Alexandre Petit-Bianco <apbianco@redhat.com> |
4969 | ||
4970 | * parse.y (type_literals:): Use `build_incomplete_class_ref' with | |
4971 | builtin type. | |
4972 | (patch_incomplete_class_ref): Build the class ref, build the class | |
4973 | init if necessary, complete the tree. | |
4974 | Fixes PR java/2605 | |
4975 | ||
19559012 APB |
4976 | 2001-05-31 Alexandre Petit-Bianco <apbianco@redhat.com> |
4977 | ||
4978 | * parse.y (lookup_field_wrapper): Test `name' code. | |
4979 | (resolve_qualified_expression_name): Test `qual_wfl' code. | |
4980 | (qualify_ambiguous_name): Handle `CONVERT_EXPR', fixe indentation, | |
4981 | handle `qual_wfl' by code. | |
4982 | (maybe_build_primttype_type_ref): Test `wfl' code. | |
4983 | ||
eb153223 TP |
4984 | 2001-05-23 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr> |
4985 | ||
4986 | * Make-lang.in ($(srcdir)/java/gcj.info): Added dependencies on | |
4987 | fdl.texi. | |
4988 | (java/gcj.dvi): Use TEXI2DVI instead of custom tex calls. Create | |
4989 | the dvi file in the java directory. | |
4990 | ||
88657302 RH |
4991 | 2001-05-25 Sam TH <sam@uchicago.edu> |
4992 | ||
4993 | * gen-table.pl javaop.h jcf.h lex.h, | |
4994 | parse.h: Fix header include guards. | |
4995 | ||
719f0fde JM |
4996 | 2001-05-23 Joseph S. Myers <jsm28@cam.ac.uk> |
4997 | ||
4998 | * jv-scan.c (version): Update copyright year. | |
4999 | ||
075516bc PB |
5000 | 2001-05-21 Per Bothner <per@bothner.com> |
5001 | ||
5002 | * jcf-parse.c (read_class): If class is from .class or .zip file | |
5003 | and it's already been read, don't push/pop parser context. | |
5004 | ||
9d289604 PB |
5005 | 2001-05-18 Per Bothner <per@bothner.com> |
5006 | ||
5007 | * jvspec.c (lang_specific_pre_link): Re-arrange the linker | |
9a07cfaf | 5008 | command line so the jvgenmain-generated main program comes first. |
9d289604 | 5009 | |
48187504 TT |
5010 | 2001-05-15 Tom Tromey <tromey@redhat.com> |
5011 | ||
5012 | * class.c (build_utf8_ref): Don't generate identifier based on | |
5013 | utf8const contents. | |
5014 | ||
f17f1898 RH |
5015 | 2001-05-12 Richard Henderson <rth@redhat.com> |
5016 | ||
5017 | * java-tree.def (JAVA_EXC_OBJ_EXPR): New. | |
5018 | * expr.c (java_lang_expand_expr): Expand it. | |
5019 | (process_jvm_instruction): Build JAVA_EXC_OBJ_EXPR instead of | |
5020 | calling build_exception_object_ref. | |
5021 | * parse.y (catch_clause_parameter): Likewise. | |
5022 | (build_dot_class_method): Likewise. | |
5023 | (try_reference_assignconv): Likewise. | |
5024 | * check-init.c (check_init): Check JAVA_EXC_OBJ_EXPR not EXC_PTR_EXPR. | |
5025 | * jcf-write.c (generate_bytecode_insns): Likewise. | |
5026 | ||
352b3f3f APB |
5027 | 2001-05-07 Alexandre Petit-Bianco <apbianco@redhat.com> |
5028 | ||
5029 | * parse.y (build_unresolved_array_type): Set | |
5030 | EXPR_WFL_QUALIFICATION on the newly created wfl. | |
5031 | Fixes PR java/2538. Fixes PR java/2535. | |
5032 | ||
41ee0877 APB |
5033 | 2001-05-07 Alexandre Petit-Bianco <apbianco@redhat.com> |
5034 | ||
17126208 | 5035 | * parse.y (fix_constructors): Removed unnecessary assignment to |
41ee0877 APB |
5036 | local. Moved assignment to `this$<n>', fixed comments and |
5037 | indentation. | |
5038 | (build_wfl_wrap): Fixed indentation. | |
5039 | Fixes PR java/2598, java/2579 and java/2658. | |
5040 | ||
4def8930 MD |
5041 | 2001-05-03 Mo DeJong <mdejong@redhat.com> |
5042 | ||
9a07cfaf | 5043 | * lex.c (java_new_lexer): Call iconv_close on temp handle used to |
4def8930 MD |
5044 | check for byte swap. |
5045 | ||
8fc6a63c JS |
5046 | 2000-05-02 Jeff Sturm <jsturm@one-point.com> |
5047 | ||
5048 | * expr.c (build_class_init): Move MODIFY_EXPR | |
5049 | outside of COND_EXPR. Remove variable `call'. | |
5050 | ||
3e411c3f KG |
5051 | 2001-05-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
5052 | ||
5053 | * decl.c: NULL_PTR -> NULL. | |
5054 | * jcf-write.c: Likewise. | |
5055 | ||
0cd015ea TT |
5056 | 2001-05-01 Tom Tromey <tromey@redhat.com> |
5057 | ||
5058 | * Make-lang.in ($(srcdir)/java/gcj.info): Added `-I..'. | |
5059 | (java/gcj.dvi): Added $(srcdir) to TEXINPUTS. | |
5060 | * gcj.texi: Updated copyright text. Include fdl.texi. | |
5061 | (Top): Link to new node. | |
5062 | ||
6a117d00 PB |
5063 | 2001-05-01 Per Bothner <per@bothner.com> |
5064 | ||
5065 | * parse.h (REGISTER_IMPORT): Use tree_cons instead of chainon. | |
5066 | ||
063df563 PB |
5067 | 2001-05-01 Per Bothner <per@bothner.com> |
5068 | ||
5069 | * parse.y (java_pop_parser_context): The TREE_VALUE of a link in the | |
5070 | import_list contains the name, not the TREE_PURPOSE. | |
5071 | ||
962584ea KG |
5072 | 2001-04-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
5073 | ||
5074 | * jcf-io.c (read_zip_member): Cast to long in comparison with | |
5075 | signed value. | |
5076 | ||
5077 | * jvspec.c (lang_specific_driver): Initialize variables. | |
5078 | ||
5079 | * mangle.c (find_compression_record_match): Likewise. | |
5080 | ||
5081 | * typeck.c (build_null_signature): Provide static prototype. Mark | |
5082 | parameter with ATTRIBUTE_UNUSED. | |
5083 | ||
5084 | * verify.c (verify_jvm_instructions): Initialize variable. | |
5085 | ||
86d9e8d8 BM |
5086 | 2001-04-27 Bryce McKinlay <bryce@waitaki.otago.ac.nz> |
5087 | ||
5088 | * parse.y (do_resolve_class): Check for cyclic inheritance during | |
e64c46ce | 5089 | inner class resolution. |
86d9e8d8 | 5090 | |
9c491eb8 PB |
5091 | 2001-04-27 Per Bothner <per@bothner.com> |
5092 | ||
5093 | * parse.y (java_expand_classes): Don't change ctxp_for_generation | |
5094 | while iterating, since that could cause gc to lose stuff. | |
5095 | ||
56fe39c8 PB |
5096 | 2001-04-26 Per Bothner <per@bothner.com> |
5097 | ||
5098 | Fix method search wrt scope of inner classes to match JLS2. | |
5099 | * typeck.c (build_null_signature): New static function. | |
5100 | (has_method): New function. Uses build_null_signature and lookup_do. | |
5101 | * java-tree.h (has_method): New declaration. | |
5102 | * parse.y (find_applicable_accessible_methods_list): Do not search | |
5103 | context of inner classes here. | |
5104 | (patch_method_invocation): Search scope, ie. current and outer clases, | |
5105 | for method matching simple name, to find class. | |
5106 | ||
8789b9fa PB |
5107 | 2001-04-26 Per Bothner <per@bothner.com> |
5108 | ||
5109 | * jcf-write.c (generate_bytecode_insns case SWITCH_EXPR): | |
5110 | Fix thinko: If a single case, use if_icmpeq, not ifeq. | |
5111 | ||
5112 | * constants.c (find_methodref_with_class_index): New function. | |
5113 | (find_methodref_index): Use find_methodref_with_class_index. | |
5114 | * java-tree.h (find_methodref_with_class_index): New declaration. | |
5115 | * jcf-write.c (generate_bytecode_insns case CALL_EXPR): Don't change | |
5116 | DECL_CONTEXT, instead use new find_methodref_with_class_index function. | |
5117 | If context changed from interface to class, don't use invokeinterface. | |
5118 | ||
5acea42b PB |
5119 | 2001-04-25 Per Bothner <per@bothner.com> |
5120 | ||
5121 | * verify.c (verify_jvm_instructions): For field instructions, | |
5122 | check that field index is valid. For invoke instructions, check that | |
5123 | method index is valid. | |
5124 | ||
dd6f3662 AO |
5125 | 2001-04-25 Alexandre Oliva <aoliva@redhat.com> |
5126 | ||
5127 | * config-lang.in (target_libs): Copy from $libgcj_saved. | |
5128 | ||
28f7d9d0 BM |
5129 | 2001-04-25 Bryce McKinlay <bryce@waitaki.otago.ac.nz> |
5130 | ||
5131 | * decl.c (init_decl_processing): Add new class "protectionDomain" | |
5132 | field. | |
5133 | * class.c (make_class_data): Set initial value for "protectionDomain". | |
5134 | ||
d4c3ec27 KG |
5135 | 2001-04-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
5136 | ||
5137 | * jvspec.c (lang_specific_driver): Fix memory allocation | |
5138 | deficit, by using concat in lieu of xmalloc/sprintf. | |
5139 | ||
3c0ce750 PB |
5140 | 2001-04-20 Per Bothner <per@bothner.com> |
5141 | ||
5142 | Fixes to compile multiple .class files at once. | |
5143 | * decl.c (init_decl_processing): Don't set CLASS_LOADED_P. | |
5144 | * java-tree.h (CLASS_PARSED_P): New macro. | |
5145 | (CLASS_LOADED_P): Re-define to use TYPE_SIZE and CLASS_PARSED_P. | |
5146 | * jcf-parse.c (jcf_parse_source): Inline into read_class. | |
5147 | (read_class): Avoid some code duplication. | |
5148 | Don't call JCF_FINISH for a .class file - might be needed later. | |
5149 | (jcf_parse): Don't call layout_class here. Check/set CLASS_PARSED_P | |
5150 | rather than CLASS_LOADED_P, since latter implies class laid out. | |
5151 | (yyparse): Do layout_class and JCF_FINISh here instead, in pass 2. | |
5152 | * parse.y: Don't need to set CLASS_LOADED_P for array types. | |
5153 | ||
d6684bc8 KG |
5154 | 2001-04-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
5155 | ||
5156 | * Make-lang.in (java/boehm.o): Depend on toplev.h. | |
5157 | ||
5158 | * boehm.c: Include toplev.h. | |
5159 | ||
10e2af38 TT |
5160 | 2001-04-06 Tom Tromey <tromey@redhat.com> |
5161 | Alexandre Petit-Bianco <apbianco@redhat.com> | |
5162 | ||
5163 | Fix for PR gcj/1404 and PR gcj/2332: | |
5164 | * parse.y (build_array_from_name): If we use the type_wfl then | |
5165 | accumulate dimensions from the original type as well. | |
5166 | (build_unresolved_array_type): Don't modify TYPE_OR_WFL in place. | |
5167 | ||
2d9fea5d TT |
5168 | 2001-04-06 Tom Tromey <tromey@redhat.com> |
5169 | ||
5170 | * parse.y (analyze_clinit_body): Return true if the second operand | |
5171 | of a METHOD_EXPR is nonzero. | |
5172 | ||
613bb86e TT |
5173 | 2001-04-06 Tom Tromey <tromey@redhat.com> |
5174 | ||
5175 | * Make-lang.in ($(srcdir)/java/parse-scan.c): Run bison from build | |
5176 | directory. | |
5177 | ($(srcdir)/java/parse.c): Likewise. | |
5178 | ||
8b66cd8f APB |
5179 | 2001-04-05 Alexandre Petit-Bianco <apbianco@redhat.com> |
5180 | ||
5181 | * gcj.texi: Use `which-gcj' instead of `which-g77.' | |
5182 | (version-gcc): Initialized. | |
5183 | (which-gcj): Likewise. | |
5184 | ||
73c299fc APB |
5185 | 2001-04-04 Alexandre Petit-Bianco <apbianco@redhat.com> |
5186 | ||
5187 | * java-tree.h (struct lang_decl): New macro | |
5188 | `DECL_FIXED_CONSTRUCTOR_P.' New field `fixed_ctor.' | |
5189 | * parse.y (build_instance_initializer): New function. | |
5190 | (add_instance_initializer): Use it. | |
5191 | (java_fix_constructors): Set `current_class' before fix pass. | |
5192 | (fix_constructors): Just return if already fixed. Move `super()' | |
67264b4f | 5193 | invocation ahead. Use `build_instance_initializer.' |
73c299fc APB |
5194 | Fixes PR java/1315. |
5195 | ||
93a6eb78 | 5196 | 2001-04-04 Alexandre Petit-Bianco <apbianco@redhat.com> |
e64c46ce | 5197 | |
93a6eb78 APB |
5198 | * parse.y (resolve_qualified_expression_name): Pass field's |
5199 | DECL_CONTEXT to `not_accessible_p.' | |
5200 | (not_accessible_p): Changed parameters order in `inherits_from_p' | |
67264b4f | 5201 | invocation. |
93a6eb78 | 5202 | |
4956c16e AH |
5203 | 2001-03-27 Andrew Haley <aph@cambridge.redhat.com> |
5204 | ||
5205 | * lang-options.h: Add flag_check_references. | |
5206 | ||
3cc48399 PB |
5207 | 2001-04-04 Per Bothner <per@bothner.com> |
5208 | ||
5209 | * java-tree.h (CONSTANT_VALUE_P): New macro. | |
5210 | * jcf-write.c (generate_classfile): Use CONSTANT_VALUE_P. | |
5211 | * parse.y (maybe_build_class_init_for_field): New static function. | |
5212 | (resolve_expression_name, resolve_field_access): Use | |
e64c46ce | 5213 | maybe_build_class_init_for_field instead of build_class_init |
3cc48399 PB |
5214 | This does not do the init if the field is compile-time-constant. |
5215 | (resolve_field_access): Simplify. | |
5216 | ||
5217 | * parse.y (fold_constant_for_init): Merge test into switch. | |
5218 | ||
d02af173 ZW |
5219 | 2001-04-03 Zack Weinberg <zackw@stanford.edu> |
5220 | ||
5221 | * Make-lang.in (buffer.o, check-init.o, class.o): Don't depend | |
5222 | on gansidecl.h. | |
5223 | * buffer.c, jvgenmain.c: Don't include gansidecl.h. | |
5224 | ||
44a2150d ZW |
5225 | 2001-04-02 Zack Weinberg <zackw@stanford.edu> |
5226 | ||
5227 | * expr.c (pop_type_0): Save the result of the first | |
e64c46ce | 5228 | lang_printable_name call in a scratch buffer, so it |
44a2150d ZW |
5229 | won't be clobbered by the second call. |
5230 | ||
de307574 APB |
5231 | 2001-03-30 Alexandre Petit-Bianco <apbianco@redhat.com> |
5232 | ||
5233 | * parse-scan.y (array_type:): Rewritten. | |
5234 | (type_declaration:): `empty_statement' replaces `SC_TK.' | |
5235 | (class_member_declaration:): `empty statement' added. | |
5236 | (method_body:): Simplified. | |
5237 | (static_initializer:): Likewise. | |
5238 | (primary_no_new_array:): Use `type_literals.' | |
5239 | (type_literals:): New rule. | |
5240 | (dims:): Set and update `bracket_count.' | |
5241 | Fixes PR java/1074. Fixes PR java/2412. | |
5242 | ||
2ff50199 APB |
5243 | 2001-03-28 Hans Boehm <boehm@acm.org> |
5244 | ||
5245 | * boehm.c (PROCEDURE_OBJECT_DESCRIPTOR): Set to use `build_int_2.' | |
5246 | (get_boehm_type_descriptor): Set type on returned value to be a | |
5247 | pointer length integer. | |
5248 | ||
80122075 KG |
5249 | 2001-03-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
5250 | ||
5251 | * expr.c (pop_type_0): Call `concat' rather than building the | |
5252 | string manually. | |
5253 | (pop_type): Add format specifier in call to `error'. | |
5254 | ||
5255 | * parse.y (patch_method_invocation): Avoid casting away | |
5256 | const-ness. | |
5257 | ||
0f5c1ee4 JO |
5258 | 2001-03-28 Jeffrey Oldham <oldham@codesourcery.com> |
5259 | ||
5260 | * jvgenmain.c (do_mangle_classname): End string constant with '\0'. | |
5261 | ||
52a11cbf RH |
5262 | 2001-03-28 Richard Henderson <rth@redhat.com> |
5263 | ||
5264 | IA-64 ABI Exception Handling: | |
5265 | * Make-lang.in (except.o): Don't depend on eh-common.h. | |
5266 | * check-init.c (check_init): Handle EXC_PTR_EXPR. | |
5267 | * decl.c (init_decl_processing) [throw_node]: No _Jv_Sjlj_Throw. | |
5268 | [soft_exceptioninfo_call_node]: Remove. | |
5269 | [eh_personality_libfunc, lang_eh_runtime_type]: New. | |
5270 | (end_java_method): No emit_handlers. | |
5271 | * except.c (java_set_exception_lang_code): Remove. | |
5272 | (method_init_exceptions): Don't call it. | |
5273 | (prepare_eh_table_type): No CATCH_ALL_TYPE. | |
5274 | (build_exception_object_ref): New. | |
5275 | (expand_end_java_handler): Update for except.h name changes. | |
5276 | (emit_handlers, expand_resume_after_catch): Remove. | |
5277 | * expr.c (java_lang_expand_expr): Update for except.h name changes. | |
5278 | (process_jvm_instruction): Use build_exception_object_ref. | |
5279 | * java-tree.h (JTI_SOFT_EXCEPTIONINFO_CALL_NODE): Remove. | |
5280 | (soft_exceptioninfo_call_node): Remove. | |
5281 | (build_exception_object_ref): Declare. | |
5282 | * jcf-write.c (generate_bytecode_insns) [CALL_EXPR]: No | |
5283 | soft_exceptioninfo_call_node. Move processing ... | |
5284 | [EXC_PTR_EXPR]: ... here. | |
5285 | * parse.h (BUILD_ASSIGN_EXCEPTION_INFO): Remove dead code. | |
5286 | * parse.y (catch_clause_parameter): Use build_exception_object_ref. | |
5287 | (source_end_java_method): No java_set_exception_lang_code or | |
5288 | emit_handlers. | |
5289 | (build_dot_class_method): Use build_exception_object_ref. | |
5290 | (try_reference_assignconv): Check EXC_PTR_EXPR not | |
5291 | soft_exceptioninfo_call_node. | |
5292 | ||
ce1c98ea RH |
5293 | 2001-03-28 Richard Henderson <rth@redhat.com> |
5294 | ||
5295 | * java-tree.h (throw_node): Define as a single member of | |
5296 | java_global_trees instead of a separate array. | |
5297 | (JTI_THROW_NODE): New. | |
5298 | * decl.c (throw_node): Don't declare. | |
5299 | (init_decl_processing): Init a scalar throw_node. | |
5300 | Don't register it for gc. | |
5301 | * check-init.c (check_init): Reference scalar throw_node. | |
5302 | * expr.c (build_java_athrow): Likewise. | |
5303 | * jcf-write.c (generate_bytecode_insns): Likewise. | |
5304 | * parse.h (BUILD_THROW): Likewise. | |
5305 | ||
da7da8f9 RH |
5306 | 2001-03-28 Richard Henderson <rth@redhat.com> |
5307 | ||
5308 | * decl.c (end_java_method): Do not save and restore | |
5309 | flag_non_call_exceptions. | |
5310 | * parse.y (source_end_java_method): Likewise. | |
5311 | * lang.c (flag_exceptions): Don't declare. | |
5312 | (java_init_options): Set flag_non_call_exceptions. Set | |
5313 | flag_exceptions here ... | |
5314 | (java_init): ... not here. | |
5315 | ||
531073e7 RH |
5316 | 2001-03-27 Richard Henderson <rth@redhat.com> |
5317 | ||
5318 | * expr.c, parse.h: Use USING_SJLJ_EXCEPTIONS instead of | |
5319 | exceptions_via_longjmp. | |
5320 | ||
461fc4de RH |
5321 | * lang.c (flag_new_exceptions): Don't declare it. |
5322 | (java_init_options): Or set it. | |
5323 | ||
c1e9f663 RH |
5324 | 2001-03-27 Richard Henderson <rth@redhat.com> |
5325 | ||
5326 | * decl.c (end_java_method): Rename asynchronous_exceptions to | |
5327 | flag_non_call_exceptions. | |
979988f3 | 5328 | * parse.y (source_end_java_method): Likewise. |
c1e9f663 | 5329 | |
911e6107 KG |
5330 | 2001-03-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
5331 | ||
5332 | * Make-lang.in: Depend on $(SYSTEM_H), not system.h. | |
5333 | ||
b850de4f MM |
5334 | 2001-03-26 Mark Mitchell <mark@codesourcery.com> |
5335 | ||
5336 | * parse.h (DECL_END_SOURCE_LINE): Don't rely on DECL_FRAME_SIZE. | |
5337 | ||
ce06965e APB |
5338 | 2001-03-26 Alexandre Petit-Bianco <apbianco@redhat.com> |
5339 | ||
5340 | * parse.y (find_as_inner_class): Follow current package | |
5341 | indications not to mistakingly load an unrelated class. | |
5342 | ||
cb9b7a8c KG |
5343 | 2001-03-25 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
5344 | ||
5345 | * constants.c (PUTN): Use memcpy, not bcopy. | |
5346 | ||
5347 | * lex.c (java_read_char): Use memmove, not bcopy. | |
5348 | ||
5349 | * parse.y (java_parser_context_resume): Use memcpy, not bcopy. | |
5350 | ||
fa029f45 PB |
5351 | 2001-03-23 Per Bothner <per@bothner.com> |
5352 | ||
5353 | * verify.c (verify_jvm_instructions): Replace 3 pop_type by POP_TYPE | |
5354 | macro for better error pin-pointing. | |
5355 | * java-tree.h: Fix typo in comment. | |
5356 | ||
5357 | * jcf-write.c (generate_bytecode_insns): Changes to TRY_FINALLY_EXPR. | |
5358 | Don't include jsr/goto in exception range. | |
5359 | Check if start and end of exception range are the same (also TRY_EXPR). | |
5360 | Don't emit jsr after try_block if CAN_COMPLETE_NORMALLY is false. | |
5361 | However, do emit the following goto even if try_block is empty. | |
5362 | Defer freeing exception_decl until after the finalizer, to make | |
5363 | sure the local isn't reused in the finalizer. Fixes PR java/1208. | |
5364 | ||
5365 | * parse.y (java_complete_lhs): If the try-clause is empty, just | |
5366 | return the finally-clause and vice versa. | |
5367 | ||
b124f72e APB |
5368 | 2001-03-23 Alexandre Petit-Bianco <apbianco@redhat.com> |
5369 | ||
5370 | * gcj.texi (Input Options): documented the check for attribute | |
5371 | `gnu.gcc.gccj-compiled' and the `-fforce-classes-archive-check' flag. | |
5372 | * java-tree.h (flag_force_classes_archive_check): Declared extern. | |
5373 | * jcf-parse.c (HANDLE_GCJCOMPILED_ATTRIBUTE): New macro. | |
5374 | (jcf_parse): Check for the right classes archive if necessary. | |
5375 | * jcf-reader.c (get_attribute): Define `MATCH_ATTRIBUTE' and use it. | |
5376 | (jcf_parse_fields): Fixed indentation. | |
5377 | * jcf-write.c (append_gcj_attribute): New function. | |
5378 | (generate_classfile): Compute the attribute count, invoke | |
5379 | `append_gcj_attribute'. | |
5380 | * jcf.h (typedef struct JCF): `seen_in_zip' and `java_source' | |
ee142fe7 | 5381 | turned into bit-fields. New bit-field `right_zip.' |
b124f72e APB |
5382 | (JCF_ZERO): Set `right_zip' to zero. |
5383 | * lang-options.h (-fforce-classes-archive-check): Added flag. | |
5384 | * lang.c (flag_force_classes_archive_check): New flag. | |
5385 | (lang_f_options): New entry `force-classes-archive-check.' | |
5386 | Fixes PR java/1213. | |
5387 | ||
4ff17c6a AH |
5388 | 2001-02-07 Andrew Haley <aph@redhat.com> |
5389 | ||
5390 | * gcj.texi (Configure-time Options): Add -fcheck-references. | |
5391 | * expr.c (build_java_indirect_ref): New function. | |
3e02b1c3 | 5392 | (java_check_reference): New function. |
4ff17c6a AH |
5393 | (build_java_array_length_access): Use build_java_indirect_ref to |
5394 | check for null references. | |
5395 | (build_java_arrayaccess): Likewise. | |
5396 | (build_get_class): Likewise. | |
5397 | (build_field_ref): Likewise. | |
5398 | (invoke_build_dtable): Likewise. | |
5399 | (build_invokeinterface): Likewise. | |
5400 | * lang.c (lang_f_options): Add flag_check_references. | |
5401 | * jvspec.c (jvgenmain_spec): Add flag_check_references. | |
5402 | * java-tree.h (flag_check_references): New variable. | |
5403 | * lang.c (flag_check_references): Likewise. | |
e64c46ce | 5404 | * parse.y (patch_invoke): Use java_check_reference. |
3e02b1c3 AH |
5405 | (patch_assignment): Allow for extra nesting in |
5406 | _Jv_CheckArrayStore. | |
4ff17c6a | 5407 | |
f2a29271 BM |
5408 | 2001-03-23 Bryce McKinlay <bryce@albatross.co.nz> |
5409 | ||
5410 | * gjavah.c (cxx_keywords): Update from the definitive list in cp/lex.c. | |
5411 | * lex.c (cxx_keywords): Likewise. | |
5412 | ||
2ff50199 APB |
5413 | 2001-03-21 Alexandre Petit-Bianco <apbianco@redhat.com> |
5414 | ||
5415 | * parse.y (qualify_ambiguous_name): Broaden `length' | |
5416 | recognition. Help MODIFY_EXPR be resolved as expression names. | |
5417 | Fixes PR java/2066. Fixes PR java/2400. | |
5418 | ||
60c87482 BM |
5419 | 2001-03-21 Bryce McKinlay <bryce@albatross.co.nz> |
5420 | ||
e64c46ce | 5421 | * gjavah.c (process_file): Mark interface definitions with |
60c87482 BM |
5422 | "__attribute__ ((java_interface))". |
5423 | ||
96c6f628 APB |
5424 | 2001-03-21 Alexandre Petit-Bianco <apbianco@redhat.com> |
5425 | ||
5426 | * class.c (layout_class): Fixed push_super_field's second | |
5427 | argument. Fixes PR java/2333. | |
5428 | (jdep_resolve_class): Reset TYPE_SIZE if `error_mark_node', it's | |
5429 | too early to lay innerclasses out. | |
5430 | ||
7abecd65 TT |
5431 | 2001-03-20 Tom Tromey <tromey@redhat.com> |
5432 | Alexandre Petit-Bianco <apbianco@redhat.com> | |
5433 | ||
5434 | * parse.y (patch_assignment): Handle the case of a SAVE_EXPR | |
5435 | inside an array reference. Insertion of the array store check | |
5436 | rewritten. Fixes PR java/2299. | |
5437 | ||
4aed8938 TT |
5438 | 2001-03-20 Tom Tromey <tromey@redhat.com> |
5439 | ||
5440 | * lex.c (java_read_unicode): Only accept leading `u's. | |
5441 | ||
ddd705d1 TT |
5442 | 2001-03-20 Tom Tromey <tromey@redhat.com> |
5443 | ||
5444 | * jcf-parse.c (read_class): Initialize `class'. | |
5445 | ||
de83bf66 MK |
5446 | 2001-03-20 Matt Kraai <kraai@alumni.carnegiemellon.edu> |
5447 | ||
5448 | * jcf_parse.c (jcf_parse): Eliminate unused variable. | |
5449 | ||
92643fea MM |
5450 | 2001-03-19 Mark Mitchell <mark@codesourcery.com> |
5451 | ||
5452 | * class.c (build_class_ref): Use SET_DECL_ASSEMBLER_NAME. | |
5453 | (layout_class): Likewise. | |
5454 | (layout_class_method): Likewise. | |
5455 | (emit_register_classes): Likewise. | |
5456 | * decl.c (builtin_function): Likewise. | |
5457 | (give_name_to_locals): Likewise. | |
5458 | ||
54646811 PB |
5459 | 2001-03-19 Per Bothner <per@bothner.com> |
5460 | ||
80fc2e84 PB |
5461 | * jcf-parse.c (load_inner_classes): Check CLASS_LOADED_P |
5462 | before trying to load an inner class. | |
5463 | ||
54646811 PB |
5464 | Fixes to process to command-line .class files in two passes. |
5465 | * java-tree.h (JAVA_FILE_P, CLASS_FILE_P, ZIP_FILE_P): New flags. | |
5466 | (CLASS_FROM_CURRENTLY_COMPILED_SOURCE_P): Rename to .. | |
5467 | (CLASS_FROM_CURRENTLY_COMPILED_P): ... because it is more general now. | |
5468 | * class.c (is_compiled_class): Fix for renamed flag. | |
5469 | * parse.y (maybe_create_class_interface_decl): Likewise. | |
5470 | * jcf-parse.c (yyparse): Also set if compiling .class files. | |
5471 | * jcf-parse.c (read_class); Read current_class. | |
5472 | (jcf_parse): Make static. | |
5473 | (load_inner_classes): New function, with code moved from jcf_parse, | |
5474 | because we need to inner classes after the command-line files are read. | |
5475 | (yyparse): Set finput to NULL when it doesn't need to be closed. | |
5476 | Reduce use of main_jcf (basically only for archive) and | |
5477 | use finput instead of main_jcf->read_state. | |
5478 | Inline jcf_figure_file_type into yyparse. | |
5479 | Set JAVA_FILE_P, CLASS_FILE_P, or ZIP_FILE_P on filename list name. | |
5480 | Defer load_inner_classes and parse_class_file to a second pass, | |
5481 | after we've correctly mapped command-line .clas fiels to classes. | |
5482 | (jcf_figure_file_type): Removed. | |
5483 | * jcf.h (JCF_ZIP, JCF_CLASS, JCF_SOURCE): Removed flags. | |
5484 | (JCF_ZERO): Also clear zipd field. | |
5485 | * zipfile.h: Conditionalize on JCF_H insread of JCF_ZIP. | |
5486 | ||
5487 | 2001-03-18 Matt Kraai <kraai@alumni.carnegiemellon.edu> | |
5488 | ||
5489 | * jcf-parse.c (yyparse): Change ch from char * to char. | |
5490 | ||
8b1edcee PB |
5491 | 2001-03-19 Per Bothner <per@bothner.com> |
5492 | ||
5493 | * jvspec.c (lang_specific_driver): Check for .zip and .jar files. | |
5494 | Add constructed filelist-file at end, following -xjava. Thus any .o | |
5495 | and library files are not affected by the -xjava. Also wrap | |
54646811 | 5496 | explicit @FILE with -xjava and -xnone. |
8b1edcee | 5497 | |
6bc5f6cb AH |
5498 | 2001-03-19 Andrew Haley <aph@cambridge.redhat.com> |
5499 | ||
9a07cfaf RH |
5500 | * class.c (build_static_field_ref): Call make_decl_rtl() after |
5501 | setting the DECL_EXTERNAL flag. | |
6bc5f6cb | 5502 | |
daaaf29f PB |
5503 | 2001-03-17 Per Bothner <per@bothner.com> |
5504 | ||
90f59043 PB |
5505 | * decl.c (clear_binding_level): Fix initializer (broke 03-15). |
5506 | ||
478e7ed6 PB |
5507 | * jcf-write.c (generate_bytecode_insns): Handle emitting iinc |
5508 | when result is is needed (target is STACK_TARGET). | |
5509 | ||
daaaf29f | 5510 | * parse.h (JDEP_SOLV): Removed. |
d148b6aa | 5511 | * parse.y (register_incomplete_type): Use JDEP_TO_RESOLVE instead. |
daaaf29f | 5512 | |
d148b6aa PB |
5513 | * parse.y (incomplete_class_list): Removed. |
5514 | (obtain_incomplete_type): Don't use or set incomplete_class_list. | |
5515 | It doesn't work if resolve_class changes the name of an array type | |
5516 | that is on the list and then someone else looks for the modified name. | |
5517 | Also, seems liable to break when compiling multiple source files at | |
5518 | once. So the simplest is to just remove incomplete_class_list - | |
5519 | it is only a minor space win and it is not even clear it saves time. | |
daaaf29f PB |
5520 | |
5521 | * parse.y (resolve_class): Remove unneeded promote_type. | |
5522 | ||
4763d38f PB |
5523 | 2001-03-15 Per Bothner <per@bothner.com> |
5524 | ||
b16e8f08 PB |
5525 | * java-tree.h (BLOCK_IS_IMPLICIT): New flag. |
5526 | * parse.h (BLOCK_EXPR_ORIGIN): Removed macro. | |
5527 | * parse.y (declare_local_variables, maybe_absorb_scoping_blocks): | |
5528 | Use BLOCK_IS_IMPLICIT rather than BLOCK_EXPR_ORIGIN. | |
8b1edcee | 5529 | |
3a2e5926 PB |
5530 | * jcf-parse.c (yyparse): Set/reset input_filename for source file. |
5531 | * parse.y (java_expand_classes): Likewise. | |
8b1edcee | 5532 | |
47a50de9 PB |
5533 | * parse.y (expand_start_java_method): Was only called once and had a |
5534 | misleading name, so inline in caller java_complete_expand_method. | |
3a2e5926 | 5535 | (enter_a_block): Likewise inline in enter_block and remove. |
47a50de9 | 5536 | |
4763d38f PB |
5537 | Remove junk from when gcc/java was created (by copying from C/C++). |
5538 | * decl.c (keep_next_level_flag, keep_next_if_subblocks): Remove. | |
5539 | (struct binding_level): Remove fields keep, keep_if_subblocks, | |
5540 | more_cleanups_ok, have_cleanups (which have never been used). | |
5541 | (pushlevel, poplevel): Remove related useless code. | |
19f8e04b | 5542 | |
69ca5554 PB |
5543 | * class.c (make_class_data): The class_dtable_decl (i.e. the |
5544 | vtable for Class) should be external, except when compiling Class. | |
5545 | ||
7d32abcd PB |
5546 | * jvspec.c (lang_specific_driver): Fix -C handling. |
5547 | Check -save-temps to see if temp @FILE should be deleted. | |
5548 | Follow-up to/fix for February 16 patch. | |
5549 | ||
19f8e04b PB |
5550 | * verify.c (verify_jvm_instructions): Better error msgs for dup. |
5551 | (type_stack_dup): Remove no-longer neded error check. | |
5552 | ||
551bf03c BM |
5553 | 2001-03-15 Bryce McKinlay <bryce@albatross.co.nz> |
5554 | ||
5555 | * mangle.c (mangle_record_type): Rename 'from_pointer' argument | |
5556 | to 'for_pointer'. If this type is for a pointer (argument) mangling, | |
e64c46ce | 5557 | don't surround the element with 'N..E' if the type name is |
551bf03c BM |
5558 | unqualified. |
5559 | ||
19e7881c MM |
5560 | 2001-03-14 Mark Mitchell <mark@codesourcery.com> |
5561 | ||
d1d61788 MM |
5562 | * class.c (build_static_field_ref): Use COPY_DECL_RTL, |
5563 | DECL_RTL_SET_P, etc. | |
19e7881c MM |
5564 | (make_method_value): Likewise. |
5565 | (get_dispatch_table): Likewise. | |
5566 | ||
5567 | * decl.c (push_jvm_slot): Use COPY_DECL_RTL, DECL_RTL_SET_P, etc. | |
8b1edcee | 5568 | |
bcacc465 TT |
5569 | 2001-03-07 Tom Tromey <tromey@redhat.com> |
5570 | ||
5571 | * config-lang.in (lang_requires): Define. | |
5572 | ||
de6c5979 BL |
5573 | 2001-03-07 Brad Lucier <lucier@math.purdue.edu> |
5574 | ||
5575 | * typeck.c (convert): Check flag_unsafe_math_optimizations, | |
5576 | not flag_fast_math. | |
5577 | ||
6d37cf2f PB |
5578 | 2001-03-05 Per Bothner <per@bothner.com> |
5579 | ||
5580 | Fix a problem where rest_of_decl_compilation applied to | |
5581 | class_dtable_decl causes problems because it was done too early, | |
5582 | before output file was opened. | |
5583 | * decl.c (init_decl_processing): Remove init of class_dtable_decl. | |
5584 | * class.c (class_dtable_decl): Add macro - element of class_roots. | |
5585 | (make_class_data): Define class_dtable_decl. | |
5586 | * java-tree.h (JTI_CLASS_DTABLE_DECL, class_dtable_decl): Removed. | |
5587 | ||
d6edb99e ZW |
5588 | 2001-03-01 Zack Weinberg <zackw@stanford.edu> |
5589 | ||
5590 | * java/class.c, java/decl.c, java/java-tree.h: Replace all | |
5591 | uses of 'boolean' with 'bool'. | |
5592 | ||
f7143427 ZW |
5593 | 2001-03-01 Zack Weinberg <zackw@stanford.edu> |
5594 | ||
5595 | * lang-specs.h: Add zero initializer for cpp_spec field to all | |
5596 | array elements. | |
5597 | ||
fea2d5da PB |
5598 | 2001-02-16 Per Bothner <per@bothner.com> |
5599 | ||
5600 | Handle compiling multiple input files at once, and @FILE syntax. | |
e4087691 | 5601 | * gcj.texi: Updated documentation to match. |
fea2d5da PB |
5602 | * java-tree.h (flag_filelist_file, init_src_parse): New declarations. |
5603 | * jcf-parse.c (parse_source_file): Split into ... | |
5604 | (parse_source_file_1): New function - and: | |
5605 | (parse_source_file_2): New function. | |
5606 | (yyparse): On -ffilelist-file, open and scan named file. | |
5607 | On first pass over files, only do parse_source_file_1. | |
5608 | A new second pass calls parse_source_file_2 for each file to compile. | |
5609 | (init_jcf_parse): Call init_src_parse. | |
5610 | * jvspec.c (INDIRECT_FILE_ARG): New flag. | |
5611 | (lang_specific_driver): Support @FILELIST-FILE syntax, as well | |
5612 | as multiple input file combined in one compilation. | |
5613 | * lang-options.h: Add -ffilelist-file | |
5614 | * lang.c (flag_filelist_file): New flag variable. | |
5615 | (lang_f_options): Handle -ffilelist-file. | |
5616 | * lex.c (java_init_lex): Don't clear ctxp->incomplete_class. | |
5617 | * parse.h (struct parse_ctxt): Remove fields incomplete_class and | |
5618 | gclass_list - use global fields of src_parse_roots instead. | |
5619 | * parse.y (src_parse_roots): New array. | |
5620 | (incomplete_class_list, gclass_list): New macros. | |
5621 | (push_parser_context, java_pop_parser_context, | |
5622 | java_parser_context_resume): Don't fiddle with deleted fields. | |
5623 | (various): Use incomplete_class gclass_list and global macros | |
5624 | instead of parse_ctxt fields - the lists are global. | |
5625 | (init_src_parse): New function. | |
5626 | ||
62c9aa5f | 5627 | 2001-02-23 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
9b58f739 RK |
5628 | |
5629 | * decl.c (set_block): Set NAMES and BLOCKS from BLOCK. | |
5630 | ||
064a552c APB |
5631 | 2001-02-20 Alexandre Petit-Bianco <apbianco@redhat.com> |
5632 | ||
5633 | * parse.y (check_inner_class_access): Moved declaration of local | |
5634 | `enclosing_decl_type' to the right location. | |
5635 | ||
a648f4e4 BM |
5636 | 2001-02-19 Bryce McKinlay <bryce@albatross.co.nz> |
5637 | ||
e64c46ce | 5638 | * parse.y (parser_check_super_interface): Don't call |
a648f4e4 | 5639 | check_pkg_class_access for an inner interface. |
e64c46ce | 5640 | (parser_check_super): Don't call check_pkg_class_access for inner |
a648f4e4 | 5641 | class. |
e64c46ce | 5642 | (do_resolve_class): Simplify enclosing type loop. Don't call |
a648f4e4 BM |
5643 | check_pkg_class_access if CL and DECL are not set. |
5644 | (find_in_imports_on_demand): Set DECL if class_type needed to be | |
5645 | loaded. Don't call check_pkg_class_access for an inner class. | |
5646 | (check_inner_class_access): Rewritten to implement member access | |
5647 | rules as per spec 6.6.1. | |
5648 | (check_pkg_class_access): Handle the empty package correctly. | |
5649 | (in_same_package): New function. Determine if two classes are in the | |
5650 | same package. | |
5651 | ||
35ab11f0 BM |
5652 | 2001-02-18 Bryce McKinlay <bryce@albatross.co.nz> |
5653 | ||
5654 | * typeck.c (build_java_array_type): Don't try to poke a public `clone' | |
5655 | method into array types. | |
5656 | * parse.y (patch_method_invocation): Bypass access check on clone call | |
5657 | to array instance. | |
e64c46ce | 5658 | |
055adbaa APB |
5659 | 2001-02-15 Alexandre Petit-Bianco <apbianco@redhat.com> |
5660 | ||
5661 | * expr.c (build_instanceof): Check for arrays when trying fold to | |
5662 | false. | |
5663 | ||
e658449e JM |
5664 | 2001-02-15 Jim Meyering <meyering@lucent.com> |
5665 | ||
fd48c9b5 DD |
5666 | * Make-lang.in (java.install-common): Depend on `installdirs'. |
5667 | (java.install-info): Likewise. | |
e658449e | 5668 | |
4238a754 BM |
5669 | 2001-02-15 Bryce McKinlay <bryce@albatross.co.nz> |
5670 | ||
5671 | * Make-lang.in (jvspec.o): Modify rule to match that of cp/g++spec.o. | |
5672 | ||
e101152f | 5673 | 2001-02-14 Tom Tromey <tromey@redhat.com> |
9a07cfaf | 5674 | Alexandre Petit-Bianco <apbianco@cygnus.com> |
e101152f | 5675 | |
055adbaa APB |
5676 | Fix for PR java/1261. |
5677 | * typeck.c (build_java_array_type): Add public `clone' method to | |
5678 | arrays. | |
5679 | * parse.y (resolve_qualified_expression_name): Use current_class | |
e101152f | 5680 | when checking for inaccessibility. |
055adbaa | 5681 | (patch_method_invocation): Fixed error message when accessibility |
e101152f APB |
5682 | denied. Added `from_super' argument. |
5683 | ||
5684 | 2001-02-14 Alexandre Petit-Bianco <apbianco@redhat.com> | |
5685 | ||
5686 | * parse.y (resolve_class): Don't build a fake decl. Use the one | |
5687 | already built. | |
5688 | * typeck.c (build_java_array_type): Build and assign decl to array | |
5689 | type. | |
5690 | ||
5691 | 2001-02-14 Alexandre Petit-Bianco <apbianco@redhat.com> | |
5692 | ||
5693 | * parse.y (not_accessible_p): Changed leading comment. Added extra | |
5694 | `where' argument. Use it to enforce protected access rules. | |
5695 | (resolve_qualified_expression_name): Added extra argument to | |
5696 | not_accessible_p. | |
5697 | (patch_method_invocation): Use argument `primary' to provide | |
5698 | not_accessible_p with an extra argument. | |
5699 | (lookup_method_invoke): Added extra argument to not_accessible_p. | |
5700 | (search_applicable_method_list): Likewise. | |
5701 | ||
863cd85a APB |
5702 | 2001-02-13 Alexandre Petit-Bianco <apbianco@redhat.com> |
5703 | ||
5704 | * parse.y (resolve_qualified_expression_name): Try to resolve as | |
5705 | an inner class access only if `decl' is a TYPE_DECL. | |
5706 | ||
94807d33 APB |
5707 | 2001-02-13 Alexandre Petit-Bianco <apbianco@cygnus.com> |
5708 | ||
5709 | * decl.c (classdollar_identifier_node): Initialize. | |
e64c46ce | 5710 | * java-tree.h (enum java_tree_index): New entry |
94807d33 APB |
5711 | `JTI_CLASSDOLLAR_IDENTIFIER_NODE.' |
5712 | (classdollar_identifier_node): New macro. | |
5713 | (ID_CLASSDOLLAR_P): Likewise. | |
5714 | * parse.y (build_dot_class_method): Use `classdollar_identifier_node.' | |
5715 | (build_dot_class_method_invocation): Likewise. | |
5716 | (find_applicable_accessible_methods_list): `class$' can't be | |
5717 | inherited. | |
5718 | ||
30f87f1a APB |
5719 | 2001-02-09 Raja R Harinath <harinath@cs.umn.edu> |
5720 | ||
5721 | * Make-lang.in (java/mangle_name.o): Add 'make' prereqs. | |
5722 | ||
5723 | 2001-02-09 Alexandre Petit-Bianco <apbianco@redhat.com> | |
5724 | ||
5725 | * Manke-lang.in (JVGENMAIN_OBJS): Added `errors.o' | |
5726 | * jvgenmain.c (error): Reversed 2001-02-09 patch. `error' is now | |
5727 | gone. | |
5728 | ||
1e97aa40 APB |
5729 | 2001-02-09 Alexandre Petit-Bianco <apbianco@redhat.com> |
5730 | ||
5731 | * mangle_name (append_unicode_mangled_name): Emit `_' or `U' | |
5732 | outside of the `__U' sequence too. | |
5733 | (unicode_mangling_length): Count `_' or `U' outside of the `__U' | |
5734 | sequence too. | |
5735 | ||
a395f5ab APB |
5736 | 2001-02-09 Alexandre Petit-Bianco <apbianco@redhat.com> |
5737 | ||
5738 | * jvgenmain.c (error): Reversed 2001-02-01 deletion. | |
5739 | ||
1b43b6be APB |
5740 | 2001-02-08 Alexandre Petit-Bianco <apbianco@cygnus.com> |
5741 | ||
5742 | * Make-lang.in (JAVA_OBJS): Added java/mangle_name.o | |
5743 | (JVGENMAIN_OBJS): Likewise. | |
e64c46ce | 5744 | * java-tree.h (append_gpp_mangled_name): New prototype. |
1b43b6be APB |
5745 | * jcf-parse.c (ggc_mark_jcf): Argument now `void *.' |
5746 | Removed cast calling `gcc_add_root.' | |
5747 | * jvgenmain.c (mangle_obstack): New global, initialized. | |
5748 | (main): Use it. | |
5749 | (do_mangle_class): Constify local `ptr.' | |
5750 | Removed macro `MANGLE_NAME.' Removed cast in `for.' Call | |
5751 | append_gpp_mangle_name and update `count' if necessary. | |
5752 | Use `mangle_obstack.' | |
5753 | * mangle.c (append_unicode_mangled_name): Removed. | |
5754 | (append_gpp_mangled_name): Likewise. | |
5755 | (unicode_mangling_length): Likewise. | |
5756 | (mangle_member_name): Return type set to `void.' | |
5757 | (mangle_field_decl): Don't append `U' in escaped names. | |
5758 | (mangle_method_decl): Likewise. | |
5759 | (mangle_member_name): Just use `append_gpp_mangled_name.' | |
5760 | * mangle_name.c: New file. | |
5761 | ||
4a83be51 PB |
5762 | 2001-02-07 Per Bothner <per@bothner.com> |
5763 | ||
5764 | * check-init.c (check_init): Fix TRY_FINALLY_EXPR logic. | |
5765 | ||
5766 | * check-init.c (check_init): Don't call done_alternative after | |
5767 | processing loop code, as a LOOP_EXPR never terminates normally. | |
5768 | ||
7e5fd99f JM |
5769 | 2001-02-08 Joseph S. Myers <jsm28@cam.ac.uk> |
5770 | ||
5771 | * gcj.texi: Change sources.redhat.com reference to gcc.gnu.org. | |
5772 | ||
1456345e APB |
5773 | 2001-02-07 Alexandre Petit-Bianco <apbianco@cygnus.com> |
5774 | ||
5775 | * jcf-parse.c (HANDLE_SYNTHETIC_ATTRIBUTE): Don't handle field | |
5776 | DECLs. | |
5777 | ||
77aff9f9 TT |
5778 | 2001-02-06 Tom Tromey <tromey@redhat.com> |
5779 | ||
5780 | * lex.c (java_new_lexer): Longer error message. | |
5781 | ||
c00dd14e JS |
5782 | 2001-02-05 Jeff Sturm <jeff.sturm@commerceone.com> |
5783 | Alexandre Petit-Bianco <apbianco@cygnus.com> | |
5784 | ||
5785 | * typeck.c (build_prim_array_type): Added leading comment. | |
5786 | (build_java_array_type): Moved locals out of | |
5787 | block. Always create the `data' field, fixed alignment to match | |
5788 | C++. | |
5789 | ||
6d091870 TT |
5790 | 2001-02-04 Tom Tromey <tromey@redhat.com> |
5791 | ||
5792 | * expr.c (java_lang_expand_expr): Don't bother recomputing | |
5793 | `length'. Use rest_of_decl_compilation, not make_decl_rtl. | |
5794 | Fixes PR java/1866. | |
5795 | ||
1ebb5e73 APB |
5796 | 2001-02-05 Alexandre Petit-Bianco <apbianco@cygnus.com> |
5797 | ||
5798 | * parse.y (process_imports): Save the original name of the import | |
5799 | for better error report. | |
5800 | ||
ca5b1ff8 BM |
5801 | 2001-02-04 Bryce McKinlay <bryce@albatross.co.nz> |
5802 | ||
5803 | * Make-lang.in (jvspec.o): Add DRIVER_DEFINES to the list | |
5804 | of macros used when compiling jvspec.c. | |
5805 | * jvspec.c (lang_specific_driver): Link with the shared | |
5806 | libgcc by default. | |
5807 | ||
62c9aa5f | 5808 | 2001-02-04 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
400500c4 RK |
5809 | |
5810 | * check-init.c (check_init): Call internal_error instead of fatal. | |
5811 | * expr.c (java_lang_expand_expr): Likewise. | |
5812 | * jcf-parse.c (get_constant): Likewise. | |
5813 | * mangle.c (java_mangle_decl): Likewise. | |
5814 | * parse.y (make_nested_class_name, java_complete_lhs): Likewise. | |
5815 | (operator_string): Likewise. | |
5816 | * check-init.c (check_init): Call abort instead of fatal. | |
5817 | * class.c (build_class_ref): Likewise. | |
5818 | * constants.c (write_constant_pool): Likewise. | |
5819 | * decl.c (start_java_method): Likewise. | |
5820 | * expr.c (push_type, java_stack_pop, java_stack_swap): Likewise. | |
5821 | (java_stack_dup, encode_newarray_type): Likewise. | |
5822 | (build_java_array_length_access): Likewise. | |
5823 | (build_java_check_indexed_type, expand_java_pushc): Likewise. | |
5824 | (build_java_soft_divmod, build_invokeinterface): Likewise. | |
5825 | * java-tree.h (INNER_CLASS_P): Likewise. | |
5826 | * jcf-parse.c (parse_signature, get_name_constant): Likewise. | |
5827 | (give_name_to_class, get_class_constant): Likewise. | |
5828 | * jcf-write.c (CHECK_PUT, CHECK_OP, get_access_flags): Likewise. | |
5829 | (find_constant_index, generate_bytecode_conditional): Likewise. | |
5830 | (generate_bytecode_insns, perform_relocations): Likewise. | |
5831 | * lex.c (java_unget_unicode, java_lex): Likewise. | |
5832 | * mangle.c (mangle_type, mangle_record_type): Likewise. | |
5833 | (mangle_pointer_type, mangle_array_type, init_mangling): Likewise. | |
5834 | (finish_mangling): Likewise. | |
5835 | * parse.h (MARK_FINAL_PARMS): Likewise. | |
5836 | * parse.y (pop_current_osb, unreachable_stmt_error): Likewise. | |
5837 | (obtain_incomplete_type, java_complete_class): Likewise. | |
5838 | (java_check_regular_methods, java_complete_expand_method): Likewise. | |
5839 | (cut_identifier_in_qualified, check_deprecation): Likewise. | |
5840 | (patch_invoke, find_applicable_accessible_methods_list): Likewise. | |
5841 | (java_complete_lhs, lookup_name_in_blocks): Likewise. | |
5842 | (check_final_variable_indirect_assignment, build_unaryop): Likewise. | |
5843 | * typeck.c (set_local_type, parse_signature_type): Likewise. | |
5844 | (parse_signature_string, build_java_signature): Likewise; | |
5845 | (set_java_signature): Likewise. | |
5846 | * verify.c (type_stack_dup, CHECK_PC_IN_RANGE): Likewise. | |
5847 | * class.c (add_method): Call fatal_error instead of fatal. | |
5848 | (build_static_field_ref): Likewise. | |
5849 | * expr.c (build_known_method_ref, expand_invoke): Likewise. | |
5850 | * jcf-parse.c (get_constant, jcf_parse): Likewise. | |
5851 | * lex.c (java_new_new_lexer): Likewise. | |
5852 | * jv-scan.c (main): Likewise. | |
5853 | (fatal_error): Renamed from fatal. | |
5854 | * jcf-parse.c (yyparse): Call fatal_io_error instead of | |
5855 | pfatal_with_name. | |
5856 | * jcf-parse.c (jcf_parse_source): Call fatal_io_error, not fatal. | |
5857 | (yyparse): Likewise. | |
5858 | * jcf-write.c (make_class_file_name, write_classfile): Likewise. | |
5859 | * lex.c (java_get_line_col): Likewise. | |
5860 | * jcf-parse.c (load_class): Make errors non-fatal. | |
5861 | * lex.c (byteswap_init, need_byteswap): Only #ifdef HAVE_ICONV. | |
e64c46ce | 5862 | |
4bae4eb5 BM |
5863 | 2001-02-01 Bryce McKinlay <bryce@albatross.co.nz> |
5864 | ||
5865 | * jvgenmain.c (class_mangling_suffix): Remove unused string. | |
5866 | (error): Remove unused function. | |
5867 | (main): Don't use "__attribute__ alias" on generated class symbol. | |
5868 | ||
c0b00d37 APB |
5869 | 2001-01-30 Alexandre Petit-Bianco <apbianco@cygnus.com> |
5870 | ||
5871 | * jcf-parse.c (init_jcf_parse): Added cast to ggc_add_root's last | |
5872 | argument. | |
5873 | * parse.y (finish_method_declaration): Code accounting for WFLed | |
5874 | method DECL_NAMEs deleted. | |
5875 | (check_abstract_method_definitions): Likewise. | |
5876 | (resolve_type_during_patch): Layout resolved type. | |
5877 | * typeck.c (lookup_do): Removed unused local. | |
5878 | ||
4bae4eb5 | 5879 | 2001-01-30 Bryce McKinlay <bryce@albatross.co.nz> |
eb59e547 BM |
5880 | |
5881 | * java-tree.h: Remove JTI_INTEGER_NEGATIVE_ONE_NODE. | |
5882 | * decl.c (init_decl_processing): Use integer_minus_one_node, not | |
5883 | integer_negative_one_node. | |
5884 | * expr.c (build_java_binop): Likewise. | |
5885 | ||
4bae4eb5 | 5886 | 2001-01-24 Jeff Sturm <jeff.sturm@commerceone.com> |
7be00c49 JS |
5887 | |
5888 | * zextract.c (read_zip_archive): Read file_offset before writing | |
5889 | zipd and consequently clobbering the header contents. | |
5890 | ||
c913b6f1 KG |
5891 | 2001-01-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
5892 | ||
5893 | * Make-lang.in: Remove all dependencies on defaults.h. | |
5894 | * decl.c: Don't include defaults.h. | |
5895 | * expr.c: Likewise. | |
5896 | * parse.y: Likewise. | |
5897 | ||
c4faeb92 APB |
5898 | 2001-01-25 Alexandre Petit-Bianco <apbianco@cygnus.com> |
5899 | ||
5900 | * ChangeLog (2001-01-21): Fixed typo. | |
5901 | * class.c (layout_class_method): Code accounting for WFLed | |
5902 | method DECL_NAMEs deleted. | |
5903 | * constant.c (find_methodref_index): Likewise. | |
5904 | * decl.c (lang_mark_tree): Mark `wfl' field in struct lang_decl. | |
5905 | * java-tree.h (DECL_FUNCTION_WFL): New macro. | |
5906 | (struct lang_decl): New field `wfl'. | |
5907 | (java_get_real_method_name): Prototype deleted. | |
5908 | * mangle.c (mangle_method_decl): Code accounting for WFLed | |
5909 | method DECL_NAMEs deleted. | |
5910 | * parse.h (GET_METHOD_NAME): Macro deleted. | |
5911 | * parse.y (reset_method_name): Deleted. | |
5912 | (method_header): Set DECL_FUNCTION_WFL. | |
5913 | (check_abstract_method_header): Code accounting for WFLed method | |
5914 | DECL_NAMEs deleted. | |
5915 | (java_get_real_method_name): Deleted. | |
5916 | (check_method_redefinition): Code accounting for WFLed method | |
5917 | DECL_NAMEs deleted. Use DECL_FUNCTION_WFL. | |
5918 | (java_check_regular_methods): Likewise. | |
5919 | (java_check_abstract_methods): Likewise. | |
5920 | (java_expand_classes): Don't call `reset_method_name.' | |
5921 | (search_applicable_method_list): Use DECL_NAMEs instead of | |
5922 | GET_METHOD_NAME. | |
5923 | * typeck.c (lookup_do): Code accounting for WFLed method | |
5924 | DECL_NAMEs deleted. | |
5925 | ||
97876d66 RE |
5926 | 2001-01-25 Richard Earnshaw <rearnsha@arm.com> |
5927 | ||
5928 | * lex.c (java_read_char): Check for EOF from getc first. | |
5929 | ||
493d561d APB |
5930 | 2001-01-23 Alexandre Petit-Bianco <apbianco@cygnus.com> |
5931 | ||
5932 | * class.c (layout_class): Don't lay the superclass out if it's | |
5933 | already being laid out. | |
5934 | * jcf-parse.c (handle_innerclass_attribute): New function. | |
5935 | (HANDLE_INNERCLASSES_ATTRIBUTE): Invoke | |
5936 | handle_innerclasses_attribute. | |
5937 | (jcf_parse): Don't load an innerclasses if it's already being | |
5938 | laid out. | |
5939 | * jcf-write.c (append_innerclass_attribute_entry): Static | |
5940 | `anonymous_name' and its initialization deleted. `ocii' and `ini' | |
5941 | to be zero for anonymous classes. | |
5942 | ||
5943 | 2001-01-23 Alexandre Petit-Bianco <apbianco@cygnus.com> | |
5944 | ||
5945 | * class.c (set_constant_value): Set DECL_FIELD_FINAL_IUD if | |
5946 | necessary. | |
5947 | * jcf-parse.c (set_source_filename): Use | |
5948 | MAYBE_CREATE_VAR_LANG_DECL_SPECIFIC if necessary. | |
5949 | ||
5950 | 2001-01-23 Alexandre Petit-Bianco <apbianco@cygnus.com> | |
5951 | ||
5952 | * expr.c (build_jni_stub): Set DECL_CONTEXT on `meth_var' so it | |
5953 | gets a unique asm name. | |
5954 | ||
5955 | 2001-01-23 Alexandre Petit-Bianco <apbianco@cygnus.com> | |
5956 | ||
5957 | * jcf-parse.c (HANDLE_END_METHODS): Nullify current_method. | |
5958 | (HANDLE_START_FIELD): Invoke MAYBE_CREATE_VAR_LANG_DECL_SPECIFIC | |
5959 | if necessary. | |
5960 | (HANDLE_SYNTHETIC_ATTRIBUTE): New macro. | |
5961 | * jcf-reader.c (get_attribute): Handle `Synthetic' attribute. | |
5962 | * parse.y (lookup_package_type_and_set_next): Deleted. | |
5963 | (resolve_package): Removed unnecessary code. | |
5964 | (find_applicable_accessible_methods_list): `finit$' can't be | |
e64c46ce | 5965 | inherited. |
493d561d APB |
5966 | * verify.c (pop_argument_types): Added missing prototype. |
5967 | ||
7c01b2b5 BM |
5968 | 2001-01-23 Bryce McKinlay <bryce@albatross.co.nz> |
5969 | ||
5970 | * config-lang.in: Disable java by default. | |
5971 | ||
80261b56 TT |
5972 | 2001-01-23 Tom Tromey <tromey@redhat.com> |
5973 | ||
5974 | * gcj.texi (Copying): New node. | |
5975 | Added copyright information. | |
5976 | ||
a4796c80 PB |
5977 | 2001-01-21 Per Bothner <per@bothner.com> |
5978 | ||
5979 | Various fixes to allow compiling a compressed .jar/.zip archive. | |
5980 | * zipfile.h (struct ZipFileCache): Replace by struct ZipFile. | |
5981 | (struct ZipFile): Add fields name and next (from ZipFileCache). | |
5982 | (struct ZipDirectory): New field zipf points to owning ZipFile. | |
5983 | * jcf.h (struct ZipDirectory): Add forward declaration. | |
5984 | (struct JCF): Declare zipd field to have type struct ZipDirectory. | |
5985 | Remove seen_in_zip and zip_offset fields. | |
5986 | (JCF_SEEN_IN_ZIP): New macro. | |
5987 | * zextract.c (read_zip_archive): Set ZipDirectory's zipf field. | |
5988 | * jcf-io.c: Change all ZipFileCache to ZipFile. | |
5989 | (read_zip_member): New function. | |
5990 | (open_in_zip): Call read_zip_member. | |
5991 | * jcf-parse.c (find_in_current_zip): Remove function. | |
5992 | (read_class): Merge in find_in_current_zip functionality. | |
5993 | Call read_zip_member if needed. | |
5994 | (parse_zip_file_entries): Use read_zip_member. | |
5995 | (process_zip_dir): Update for removed and added JCF fields. | |
5996 | (jcf_figure_file_type): Re-use, don't copy initial ZipFile struct. | |
5997 | ||
b5c4fed9 PB |
5998 | 2001-01-21 Per Bothner <per@bothner.com> |
5999 | ||
6000 | Minor optimization of static ggc roots. | |
6001 | * jcf-parse.c (parse_roots): New static field. | |
6002 | (current_field, current_method, current_file_list): Replace by macros | |
6003 | naming fields of parse_roots. | |
6004 | (init_jcf_parse): Combine 3 ggc_add_tree_root calls to 1. | |
6005 | * class.c (class_roots): New static field. | |
6006 | (registered_class, fields_ident, info_ident, class_list): | |
6007 | New macros naming fields of parse_roots. | |
6008 | (build_static_field_ref): Don't register roots here. | |
6009 | (layout_class): Static field list replaced by macro class_list. | |
6010 | (init_class_processing): Call ggc_add_tree_root for 4 roots. | |
6011 | Initialize fields_ident and info_ident here. | |
6012 | ||
3432b91b PB |
6013 | 2001-01-21 Per Bothner <per@bothner.com> |
6014 | ||
6015 | * jcf-parse.c (ggc_mark_jcf): New function. | |
6016 | (init_jcf_parse): Register current_jcf as ggc root. | |
6017 | ||
2c36c7fd PB |
6018 | 2001-01-21 Per Bothner <per@bothner.com> |
6019 | ||
6020 | * lang.c (put_decl_node): Print method's name. | |
6021 | ||
9c0c88ac PB |
6022 | 2001-01-21 Per Bothner <per@bothner.com> |
6023 | ||
6024 | * verify.c (VERIFICATION_ERROR_WITH_INDEX): New macro. | |
6025 | (verify_jvm_instructions): Use it, for better error messages on loads. | |
6026 | ||
230cbd5f PB |
6027 | 2001-01-21 Per Bothner <per@bothner.com> |
6028 | ||
c4faeb92 | 6029 | * verify.c (merge_type_state): Still may have to merge even if |
230cbd5f PB |
6030 | LABEL_VERIFIED (label). |
6031 | ||
e6b6db0d PB |
6032 | 2001-01-21 Per Bothner <per@bothner.com> |
6033 | ||
6034 | * parse.y (method_header): Don't set the DECL_NAME of a FUNCTION_DECL | |
6035 | to a EXPR_WITH_FILE_LOCATION - that is just too fragile and wrong. | |
6036 | ||
b57300bc PB |
6037 | 2001-01-19 Per Bothner <per@bothner.com> |
6038 | ||
6039 | * expr.c (pop_type_0): Only return object_ptr_type_node on mismatch | |
6040 | if expeting an interface type. Refines Tom's change of 2000-09-12. | |
6041 | ||
ee08d4cc PB |
6042 | 2001-01-18 Per Bothner <per@bothner.com> |
6043 | ||
6044 | * gcj.texi (Input Options): Mention .java files. | |
6045 | ||
b1117741 APB |
6046 | 2001-01-17 Alexandre Petit-Bianco <apbianco@cygnus.com> |
6047 | ||
6048 | * lang-options.h (-Wunsupported-jdk11): Removed. | |
6049 | * lang.c (flag_not_overriding): Deleted. | |
6050 | (flag_static_local_jdk1_1): Likewise. | |
6051 | (lang_W_options): Removed "unsupported-jdk11" entry. | |
6052 | * parse.y (java_check_methods): Removed dead code. | |
6053 | ||
2dc73168 TT |
6054 | 2001-01-17 Tom Tromey <tromey@redhat.com> |
6055 | ||
6056 | Changes suggested by Per Bothner: | |
6057 | * gcj.texi (Input Options): Don't mention input files. | |
6058 | (Code Generation): Updated --main information. | |
6059 | (Invoking jcf-dump): Mention that --javap is incomplete. | |
6060 | From Alexandre Petit-Bianco: | |
6061 | (Warnings): Don't mention -Wunsupported-jdk11. | |
6062 | My stuff: | |
6063 | (Compatibility): Mention JDK 1.2-ness of libraries. | |
6064 | (Resources): Mention resources used when writing gcj. | |
6065 | ||
bc65b5ec TT |
6066 | 2001-01-17 Tom Tromey <tromey@redhat.com> |
6067 | ||
6068 | * gcj.texi: New file. | |
6069 | * Make-lang.in ($(srcdir)/java/gcj.info): New target. | |
6070 | (java.info): Depend on gcj.info. | |
6071 | (java/gcj.dvi): New target. | |
6072 | (java.dvi): Depend on gcj.dvi. | |
6073 | (java.install-info): Wrote. | |
6074 | ||
930f6690 JS |
6075 | 2001-01-16 Jeff Sturm <jeff.sturm@appnet.com> |
6076 | ||
6077 | * expr.c (java_lang_expand_expr): Use TREE_SYMBOL_REFERENCED after | |
6078 | having called make_decl_rtl. | |
6079 | ||
00b4575d PB |
6080 | 2001-01-14 Per Bothner <per@bothner.com> |
6081 | ||
984ad2c6 PB |
6082 | Various patches to emit better messages on verification errors. |
6083 | * expr.c (push_type_0): Return error indication on stack overflow, | |
6084 | instead of callinfg fatal. | |
6085 | (push_type): Now just call push_type_0 (nd fatal on overflow). | |
6086 | (pop_type_0): Return detailed error message (in a char** argument). | |
6087 | (pop_type): If pop_type_0 fails, print error message. | |
6088 | (pop_argument_types): Moved to verify.c. | |
6089 | * verify.c (pop_argument_types): Moved from expr.c. | |
6090 | Return a (possible) error message, rather than void. | |
6091 | (POP_TYPE, POP_TYPE_CONV, PUSH_TYPE, PUSH_PENDING): New macros. | |
6092 | (verify_jvm_instruction): Use new macros, improving error messages. | |
6093 | For case OPCODE_astore use object_ptr_type_node. | |
6094 | * java-tree.h (TYPE_UNDERFLOW, TYPE_UNEXPECTED): New macros. | |
6095 | (pop_type_0, push_type_0, pop_argument_types): Update accordingly. | |
6096 | ||
00b4575d PB |
6097 | * parse.y (java_complete_lhs case EXPR_WITH_FILE_LOCATION): If body is |
6098 | constant, return body without wrapper. (Improves constant folding.) | |
6099 | * lex.c (build_wfl_node): Clear TREE_TYPE from returned node. | |
6100 | ||
d9da31dd PB |
6101 | 2001-01-13 Per Bothner <per@bothner.com> |
6102 | ||
6103 | * expr.c (expand_java_field_op): Assigning to a final field outside | |
6104 | an initializer does not violate JVM spec, so should be warning, not | |
6105 | error. (Sun's verifier does not complain - though MicroSoft's does.) | |
e64c46ce | 6106 | |
a67a383a JM |
6107 | 2001-01-12 Joseph S. Myers <jsm28@cam.ac.uk> |
6108 | ||
6109 | * gjavah.c (version), jcf-dump.c (version): Update copyright year | |
6110 | to 2001. | |
6111 | ||
7e1376a1 BM |
6112 | 2001-01-11 Bryce McKinlay <bryce@albatross.co.nz> |
6113 | ||
6114 | * parse.y (resolve_expression_name): Permit instance variables from | |
6115 | enclosing context in super constructor call. | |
6116 | (resolve_qualified_expression_name): Permit enclosing class's qualified | |
6117 | "this" in super constructor call. | |
6118 | ||
6c418184 MM |
6119 | 2001-01-10 Mark Mitchell <mark@codesourcery.com> |
6120 | ||
6121 | * class.c (build_utf8_ref): Remove last argument in call to | |
6122 | make_decl_rtl; use make_function_rtl instead of make_decl_rtl. | |
6123 | (build_class_ref): Likewise. | |
6124 | (build_static_field_ref): Likewise. | |
6125 | (get_dispatch_table): Likewise. | |
6126 | (layout_class_method): Likewise. | |
6127 | (emit_register_classes): Likewise. | |
6128 | * constants.c (build_constant_data_ref): Likewise. | |
6129 | * decl.c (builtin_function): Likewise. | |
6130 | (create_primitive_vtable): Likewise. | |
6131 | * expr.c (build_known_method_def): Likewise. | |
6132 | (build_jni_stub): Likewise. | |
6133 | (java_lang_expand_expr): Likewise. | |
e64c46ce | 6134 | |
0adc3d8a TT |
6135 | 2001-01-10 Tom Tromey <tromey@redhat.com> |
6136 | ||
6137 | * jvspec.c (jvgenmain_spec): Omit -fencoding from cc1 invocation. | |
6138 | ||
761491c8 APB |
6139 | 2001-01-08 Alexandre Petit-Bianco <apbianco@cygnus.com> |
6140 | ||
6141 | * java-tree.h (lang_printable_name_wls): New prototype. | |
6142 | * lang.c (put_decl_name): Removed dead code. Use DECL_CONTEXT | |
6143 | rather than `current_class' to print type name. Don't prepend type | |
6144 | names when printing constructor names. | |
6145 | (lang_printable_name_wls): New function. | |
6146 | * jcf-parse.c (jcf_parse_source): Pass NULL `file' argument to | |
6147 | `build_expr_wfl', alway set EXPR_WFL_FILENAME_NODE. | |
6148 | * parse.y (patch_method_invocation): Message tuned for constructors. | |
6149 | (not_accessible_p): Grant `private' access from within | |
6150 | enclosing contexts. | |
e64c46ce | 6151 | |
dc08e603 APB |
6152 | 2001-01-07 Alexandre Petit-Bianco <apbianco@cygnus.com> |
6153 | ||
6154 | All files with updated copyright when applicable. | |
6155 | * Make-lang.in (JVGENMAIN_OBS): Removed java/mangle.o. | |
6156 | * class.c (mangle_class_field): Function removed. | |
6157 | (append_gpp_mangled_type, mangle_static_field, mangle_field): Likewise. | |
6158 | (utf8_cmp, cxx_keyword_p): Moved to lex.c. | |
6159 | (build_class_ref): Call `java_mangle_class_field' instead of | |
6160 | `mangle_class_field.' | |
6161 | (build_dtable_decl): Rewritten to call `java_mangle_vtable.' | |
e64c46ce | 6162 | (layout_class): Call `java_mangle_decl' instead of |
dc08e603 APB |
6163 | `mangle_static_field.' |
6164 | (cxx_keywords): Initialized static array moved to `lex.c.' | |
6165 | (layout_class_method): Changed leading comment. Simplified to | |
6166 | call `java_mangle_decl.' Local `ptr' moved in for loop body. | |
6167 | * decl.c (lang_mark_tree): Mark field `package_list.' | |
6168 | * java-tree.h (TYPE_PACKAGE_LIST): New macro. | |
6169 | (struct lang_type): New field `package_list.' | |
6170 | (unicode_mangling_length): Prototype removed. | |
6171 | (append_gpp_mangled_name, append_gpp_mangled_classtype, | |
6172 | emit_unicode_mangled_name): Likewise. | |
6173 | (cxx_keyword_p): New prototype. | |
6174 | (java_mangle_decl, java_mangle_class_field, | |
6175 | java_mangle_class_field_from_string, java_mangle_vtable): Likewise. | |
6176 | * jcf-parse.c (jcf_parse_source): Constify `file' argument to | |
6177 | `build_expr_wfl.' | |
6178 | * jvgenmain.c (main_method_prefix): Global variable removed. | |
6179 | (main_method_suffix): Likewise. | |
6180 | (do_mangle_classname): New function. | |
a83f01f0 | 6181 | (main): Call it. Format changed to accommodate new mangling scheme. |
dc08e603 APB |
6182 | * lex.c: (utf8_cmp): Conditionally prototyped. |
6183 | (cxx_keywords): Moved from class.c, conditionally defined. | |
6184 | (utf8_cmp, cxx_keyword_p): Likewise. | |
6185 | * mangle.c (obstack.h, ggc.h): Included. | |
6186 | (mangle_field_decl): New function. | |
6187 | (mangle_method_decl, mangle_type, mangle_pointer_type, | |
6188 | mangle_array_type, mangle_record_type, | |
6189 | find_compression_pointer_match, find_compression_array_match, | |
6190 | find_compression_record_match, | |
6191 | find_compression_array_template_match, set_type_package_list, | |
6192 | entry_match_pointer_p, emit_compression_string, init_mangling, | |
6193 | finish_mangling, compression_table_add, mangle_member_name): Likewise. | |
6194 | (mangle_obstack): New global. | |
6195 | (MANGLE_RAW_STRING): New macro. | |
6196 | (unicode_mangling_length): Turned static. | |
6197 | (append_unicode_mangled_name): Renamed from | |
6198 | `emit_unicode_mangled_name.' Turned static. `mangle_obstack' | |
6199 | replaces `obstack', removed from the parameter list. | |
6200 | (append_gpp_mangled_name): Turned static. `mangle_obstack' | |
e64c46ce | 6201 | replaces parameter `obstack', removed from the parameter list. Call |
dc08e603 APB |
6202 | `append_unicode_mangled_name' instead of `emit_unicode_mangled_name. |
6203 | (append_gpp_mangled_classtype): Removed. | |
6204 | (compression_table, compression_next): New static variables. | |
6205 | * parse.y (temporary_obstack): Extern declaration removed. | |
6206 | ||
761491c8 APB |
6207 | 2001-01-05 Alexandre Petit-Bianco <apbianco@cygnus.com> |
6208 | ||
6209 | * parse.y (patch_binop): Compute missing type in error situations. | |
6210 | ||
5bb11b2e BM |
6211 | 2001-01-05 Bryce McKinlay <bryce@albatross.co.nz> |
6212 | ||
6213 | * class.c (make_class_data): Push initial value for "arrayclass". | |
6214 | * decl.c (init_decl_processing): Add new class field "arrayclass". | |
6215 | ||
ac39dac0 BM |
6216 | 2001-01-05 Bryce McKinlay <bryce@albatross.co.nz> |
6217 | ||
6218 | From patha@softlab.ericsson.se: | |
e64c46ce | 6219 | * parse.y (switch_label): Use build, not build1, to construct |
ac39dac0 BM |
6220 | DEFAULT_EXPR. |
6221 | ||
a5a4ce3c NB |
6222 | 2001-01-04 Neil Booth <neil@daikokuya.demon.co.uk> |
6223 | ||
6224 | * lang.c (lang_decode_option): Change -MA to -MP. | |
6225 | * jcf-depend.c (jcf_dependency_add_target, jcf_dependency_set_target): | |
6226 | Update to new prototype; do quote targets. | |
6227 | (jcf_dependency_write): Update. | |
6228 | ||
d27fd99a BM |
6229 | 2000-12-22 Bryce McKinlay <bryce@albatross.co.nz> |
6230 | ||
6231 | Shorten primitive array allocation path: | |
6232 | * decl.c (init_decl_processing): Use _Jv_NewPrimArray not _Jv_NewArray | |
6233 | to create new primitive arrays. | |
e64c46ce | 6234 | * expr.c (build_newarray): If generating native code, call |
d27fd99a BM |
6235 | soft_newarray_node with a reference to the primitive TYPE identifier |
6236 | instead of type_value. | |
e64c46ce | 6237 | |
c1eacb70 BM |
6238 | 2000-12-17 Bryce McKinlay <bryce@albatross.co.nz> |
6239 | ||
6240 | Fix for PRs gcj/312 and gcj/253: | |
6241 | * parse.y (valid_ref_assignconv_cast_p): Load classes for source and | |
6242 | dest if they arn't already. | |
e64c46ce | 6243 | * class.c (layout_class): Call maybe_layout_super_class on |
c1eacb70 BM |
6244 | superinterfaces also, but only if compiling from bytecode. |
6245 | ||
6d003d5c BM |
6246 | Fix for PR gcj/373: |
6247 | * parse.y (create_class): Set ACC_STATIC if class is declared in an | |
6248 | interface. | |
6249 | ||
325de66c TT |
6250 | 2000-12-15 Tom Tromey <tromey@redhat.com> |
6251 | ||
6252 | * jcf-parse.c (jcf_parse_source): Set wfl_operator if not already | |
6253 | set. | |
6254 | ||
e35990c4 AH |
6255 | 2000-12-14 Andrew Haley <aph@redhat.com> |
6256 | ||
6257 | * boehm.c (mark_reference_fields): Change test to correctly detect | |
6258 | bitmap overflow. | |
6259 | ||
53714cda AJ |
6260 | 2000-12-15 Andreas Jaeger <aj@suse.de> |
6261 | ||
6262 | * config-lang.in (lang_dirs): Added. | |
6263 | ||
1e0cdc10 APB |
6264 | 2000-12-15 Alexandre Petit-Bianco <apbianco@cygnus.com> |
6265 | ||
6266 | * parse.y (end_artificial_method_body): Fixed undefined behavior. | |
6267 | Credits go to rth for finding it. | |
6268 | ||
e9e42530 MS |
6269 | 2000-12-13 Mike Stump <mrs@wrs.com> |
6270 | ||
6271 | * parse.y (check_static_final_variable_assignment_flag): Fix spelling. | |
6272 | ||
3f27e3f8 TT |
6273 | 2000-11-07 Tom Tromey <tromey@cygnus.com> |
6274 | ||
6275 | * Make-lang.in (JAVA_LEX_C): Added chartables.h. | |
6276 | * lex.c (java_ignorable_control_p): Removed. | |
6277 | (java_letter_or_digit_p): Removed. | |
6278 | (java_start_char_p): New function. | |
6279 | (java_read_char): Return `int', not `unicode_t'. Changed | |
6280 | callers. | |
6281 | (java_read_unicode): Likewise. | |
6282 | (java_read_unicode_collapsing_terminators): Likewise. | |
6283 | (java_get_unicode): Likewise. | |
6284 | (java_new_lexer): Initialize hit_eof. | |
6285 | (java_parse_end_comment): Take `int' argument. | |
6286 | (java_parse_doc_section): Likewise. | |
6287 | (java_parse_escape_sequence): Don't allow backlash-newline. | |
6288 | Return `int'. | |
6289 | * lex.h (JAVA_DIGIT_P): Removed. | |
6290 | (_JAVA_LETTER_OR_DIGIT_P): Removed. | |
6291 | (_JAVA_IDENTIFIER_IGNORABLE): Removed. | |
6292 | (JAVA_START_CHAR_P): Renamed from JAVA_ID_CHAR_P. | |
6293 | (JAVA_PART_CHAR_P): New macro. | |
6294 | (UEOF): Now -1. | |
6295 | (JAVA_CHAR_ERROR): Now -2. | |
6296 | (java_lexer): New field `hit_eof'. | |
6297 | * chartables.h: New file. | |
6298 | * gen-table.pl: new file. | |
6299 | ||
568aac9c | 6300 | 2000-11-20 Tom Tromey <tromey@cygnus.com> |
9a07cfaf | 6301 | Alexandre Petit-Bianco <apbianco@cygnus.com> |
568aac9c TT |
6302 | |
6303 | * parse.y (java_complete_lhs): Only allow compound assignment of | |
6304 | reference type if type is String. | |
6305 | ||
f34ff6d6 APB |
6306 | 2000-12-09 Alexandre Petit-Bianco <apbianco@cygnus.com> |
6307 | ||
6308 | * Make-lang.in (java/jcf-path.o:): libgcj.jar replaces libgcj.zip. | |
6309 | jcf-path.c: Likewise. | |
6310 | ||
6e5589e8 AG |
6311 | 2000-12-09 Anthony Green <green@redhat.com> |
6312 | ||
6313 | * zipfile.h (ZipDirectory): Declare size, uncompressed_size, | |
6314 | filestart and filename_length as int values. | |
6315 | ||
8000caee MD |
6316 | 2000-12-07 Mo DeJong <mdejong@redhat.com> |
6317 | ||
6318 | * jcf-io.c (find_class): Correct the logic that tests to see if a | |
6319 | .java file is newer than its .class file. The compiler was | |
6320 | incorrectly printing a warning when file mod times were equal. | |
6321 | ||
f6bbde28 ZW |
6322 | 2000-12-07 Zack Weinberg <zack@wolery.stanford.edu> |
6323 | ||
6324 | * jvgenmain.c: Use ISPRINT not isascii. | |
6325 | ||
46142b26 APB |
6326 | 2000-12-06 Alexandre Petit-Bianco <apbianco@cygnus.com> |
6327 | ||
6328 | * parse.y (end_artificial_method_body): Fixed typo. | |
6329 | ||
f8b93ea7 APB |
6330 | 2000-12-04 Alexandre Petit-Bianco <apbianco@cygnus.com> |
6331 | ||
6332 | * parse.y (patch_method_invocation): Pick the correct enclosing | |
6333 | context when creating inner class instances. | |
6334 | Fixes gcj/332. | |
6335 | ||
45441c5b JM |
6336 | 2000-11-26 Joseph S. Myers <jsm28@cam.ac.uk> |
6337 | ||
6338 | * gjavah.c (version), jcf-dump.c (version), jv-scan.c (version): | |
6339 | Update copyright year to 2000. | |
6340 | ||
1510057a AG |
6341 | 2000-11-23 Anthony Green <green@redhat.com> |
6342 | ||
6343 | * jcf-parse.c (init_jcf_parse): Register current_file_list root. | |
6344 | Move current_file_list out of yyparse and make it static. | |
6345 | ||
6346 | * expr.c: Declare quick_stack and tree_list_free_list as static | |
6347 | (init_expr_processing): Register quick_stack and | |
6348 | tree_list_free_list roots. | |
6349 | ||
5e18f6d6 APB |
6350 | 2000-11-22 Alexandre Petit-Bianco <apbianco@cygnus.com> |
6351 | ||
6352 | * parse.y (build_outer_field_access): New local `decl_ctx', use | |
6353 | it. Check for field's context and current class immediate outer | |
6354 | context inheritance. | |
6355 | (outer_field_access_p): Consider fields inherited from the last | |
6356 | enclosing context. | |
6357 | (build_access_to_thisn): Stop at the last enclosing context if | |
6358 | necessary. | |
6359 | Fixes gcj/367. | |
6360 | ||
62c9aa5f | 6361 | 2000-11-23 J"orn Rennecke <amylaar@redhat.com> |
9196ece5 R |
6362 | |
6363 | * Make-lang.in (jvspec.o): Depend on $(CONFIG_H). | |
6364 | ||
c385cdf6 BM |
6365 | 2000-11-22 Bryce McKinlay <bryce@albatross.co.nz> |
6366 | ||
6367 | * jcf-parse.c (get_constant): Call UT8_CHAR_LENGTH on `utf8', not the | |
6368 | scratch buffer. | |
6369 | ||
1535cc88 TT |
6370 | 2000-11-20 Tom Tromey <tromey@cygnus.com> |
6371 | ||
6372 | * jv-scan.c (help): Document --complexity. | |
6373 | (options): Added --complexity. | |
6374 | (flag_complexity): New global. | |
6375 | (main): Call `report'. | |
6376 | * parse-scan.y (complexity): New global. | |
6377 | (if_then_statement, if_then_else_statement, | |
6378 | if_then_else_statement_nsi, switch_block_statement_group, | |
6379 | while_expression, do_statement, for_begin, continue_statement, | |
6380 | throw_statement, catch_clause, finally, method_invocation, | |
6381 | conditional_and_expression, conditional_or_expression, | |
6382 | conditional_expression): Update complexity. | |
6383 | (reset_report): Reset complexity. | |
6384 | (report): New function. | |
6385 | ||
d828bc42 TT |
6386 | 2000-11-20 Tom Tromey <tromey@cygnus.com> |
6387 | ||
6388 | * lex.c (yylex): Added STRICT_TK case. | |
6389 | * parse.y (STRICT_TK): Added. | |
6390 | * parse-scan.y (STRICT_TK): Added. | |
6391 | * Make-lang.in ($(srcdir)/java/keyword.h): Added missing `\' and | |
6392 | `;'. Use 4, not 3, with -k option. Correctly rename resulting | |
6393 | file. | |
6394 | * keyword.h: Rebuilt. | |
6395 | * keyword.gperf (strictfp): Added. | |
6396 | ||
4e7842a0 TT |
6397 | 2000-11-20 Tom Tromey <tromey@cygnus.com> |
6398 | ||
6399 | * lex.c (yylex): Recognize floating point constants with leading | |
6400 | 0. | |
6401 | ||
7e9355c6 KG |
6402 | 2000-11-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
6403 | ||
6404 | * java-tree.h (cyclic_inheritance_report): Constify. | |
6405 | * parse.y (cyclic_inheritance_report): Likewise. | |
6406 | ||
a8a05998 ZW |
6407 | 2000-11-17 Zack Weinberg <zack@wolery.stanford.edu> |
6408 | ||
6409 | * parse.y (goal): Remove call to ggc_add_string_root. | |
6410 | ||
520a57c8 ZW |
6411 | 2000-11-16 Zack Weinberg <zack@wolery.stanford.edu> |
6412 | ||
6413 | * jcf-parse.c (get_constant), parse.y (do_merge_string_cste): | |
6414 | Create string in scratch buffer, then pass to build_string. | |
6415 | ||
88f3c477 JM |
6416 | 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
6417 | ||
6418 | * parse.y (issue_warning_error_from_context): Add | |
6419 | ATTRIBUTE_PRINTF. | |
6420 | ||
ac51395d AG |
6421 | 2000-11-11 Anthony Green <green@redhat.com> |
6422 | ||
6423 | * jcf-parse.c (process_zip_dir): Add finput parameter. | |
6424 | (jcf_figure_file_type): Call process_zip_dir with appropriate | |
6425 | argument. | |
6426 | ||
4e135bdd KG |
6427 | 2000-11-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
6428 | ||
6429 | * decl.c (copy_lang_decl): Use memcpy, not bcopy. | |
6430 | * jcf-parse.c (jcf_figure_file_type): Likewise. | |
6431 | ||
2e09e75a JM |
6432 | 2000-11-09 Joseph S. Myers <jsm28@cam.ac.uk> |
6433 | ||
6434 | * parse.y (create_new_parser_context): Use memset () instead of | |
6435 | bzero (). | |
6436 | ||
136c35df TT |
6437 | 2000-11-08 Tom Tromey <tromey@cygnus.com> |
6438 | ||
6439 | * gjavah.c (process_file): Only include gcj/cni.h when generating | |
6440 | CNI stubs. | |
6441 | ||
961192e1 JM |
6442 | 2000-11-07 Joseph S. Myers <jsm28@cam.ac.uk> |
6443 | ||
6444 | * expr.c (note_instructions), jcf-io.c (find_class), jcf-parse.c | |
6445 | (init_outgoing_cpool), lex.c (java_init_lex): Use memset () | |
6446 | instead of bzero (). | |
6447 | ||
099a5150 TT |
6448 | 2000-11-05 Tom Tromey <tromey@cygnus.com> |
6449 | ||
6450 | * lex.h (JAVA_FLOAT_RANGE_ERROR): Typo fix. | |
6451 | * lex.c (IS_ZERO): New define. | |
6452 | (java_perform_atof): Error on floating point underflow. | |
6453 | ||
cbf53a1d TT |
6454 | 2000-11-04 Tom Tromey <tromey@cygnus.com> |
6455 | ||
6456 | * lex.c (java_parse_escape_sequence): Only read two octal | |
6457 | characters if the first one is greater than 3. Don't allow | |
6458 | "octal" numbers to include the digits 8 or 9. | |
6459 | ||
436a88a6 JM |
6460 | 2000-11-05 Joseph S. Myers <jsm28@cam.ac.uk> |
6461 | ||
6462 | * Make-lang.in (java.distdir): Remove. | |
6463 | ||
747800ee TT |
6464 | 2000-11-03 Tom Tromey <tromey@cygnus.com> |
6465 | ||
4e2c8d44 TT |
6466 | * Make-lang.in (java.dvi): New target. |
6467 | Partial fix for PR other/567. | |
6468 | ||
b7436b72 TT |
6469 | * lang-options.h: Mention -Wout-of-date. |
6470 | * jcf-dump.c (flag_newer): New global. | |
6471 | * gjavah.c (flag_newer): New global. | |
6472 | * jcf-io.c (find_class): Only warn when flag_newer set. | |
6473 | * lang.c (flag_newer): New global. | |
6474 | (struct string_option): New declaration. | |
6475 | (lang_W_options): New global. | |
6476 | (process_option_with_no): New function. | |
6477 | (lang_decode_option): Use it. | |
6478 | ||
0160fbe1 TT |
6479 | * class.c (cxx_keyword_p): Accept keywords with trailing `$'s. |
6480 | * gjavah.c (cxx_keyword_subst): Handle any number of trailing | |
6481 | `$'. | |
6482 | ||
747800ee TT |
6483 | * lex.h (_JAVA_IDENTIFIER_IGNORABLE): New macro. |
6484 | (JAVA_ID_CHAR_P): Also try java_ignorable_control_p. | |
6485 | * lex.c (java_read_unicode): Removed `term_context' argument. | |
6486 | Recognize any number of `u' in `\u'. | |
6487 | (java_read_unicode_collapsing_terminators): New function. | |
6488 | (java_get_unicode): Use it. | |
6489 | (java_lineterminator): Removed. | |
6490 | (yylex): Produce error if character literal is newline or single | |
6491 | quote. Return if eof found in middle of `//' comment. EOF in | |
6492 | `//' comment is only an error if pedantic. | |
6493 | (java_ignorable_control_p): New function. | |
6494 | (java_parse_end_comment): Return if eof found in middle of | |
6495 | comment. | |
6496 | Include flags.h. | |
6497 | * jv-scan.c (pedantic): New global. | |
6498 | ||
ee5f86dc APB |
6499 | 2000-10-31 Alexandre Petit-Bianco <apbianco@cygnus.com> |
6500 | ||
6501 | * parse.y (outer_field_access_p): Inherited fields aren't | |
6502 | consider outer fields. | |
6503 | (maybe_build_thisn_access_method): Use | |
6504 | PURE_INNER_CLASS_TYPE_P instead of INNER_CLASS_TYPE_P. | |
6505 | (resolve_expression_name): Trigger an error if a static field | |
6506 | is being accessed as an outer field. | |
6507 | ||
7ccd2fc9 | 6508 | 2000-10-29 Alexandre Petit-Bianco <apbianco@cygnus.com> |
f6bbde28 | 6509 | |
7ccd2fc9 APB |
6510 | * Make-lang.in (LIBGCJ_ZIP_FILE): Define with `$(prefix)'. |
6511 | Fixes gcj/365. | |
6512 | ||
b8dad04b ZW |
6513 | 2000-10-27 Zack Weinberg <zack@wolery.stanford.edu> |
6514 | ||
6515 | * Make-lang.in: Move all build rules here from Makefile.in, | |
6516 | adapt to new context. Wrap all rules that change the current | |
6517 | directory in parentheses. Expunge all references to $(P). | |
6518 | When one command depends on another and they're run all at | |
6519 | once, use && to separate them, not ;. Add OUTPUT_OPTION to | |
6520 | all object-file generation rules. Delete obsolete variables. | |
6521 | ||
6522 | * Makefile.in: Delete. | |
6523 | * config-lang.in: Delete outputs= line. | |
6524 | ||
2cb3951d APB |
6525 | 2000-10-25 Alexandre Petit-Bianco <apbianco@cygnus.com> |
6526 | ||
6527 | * parse.y (patch_method_invocation): NULLify this_arg when already | |
6528 | inserted. | |
6529 | (maybe_use_access_method): Handle call to methods unrelated to the | |
6530 | current class. Fixed comment. | |
6531 | Fixes gcj/361. | |
6532 | ||
ee5f86dc APB |
6533 | 2000-10-24 Alexandre Petit-Bianco <apbianco@cygnus.com> |
6534 | ||
6535 | * parse.h (INNER_ENCLOSING_SCOPE_CHECK): Check inherited type in | |
6536 | scope. | |
6537 | ||
07b5e470 TT |
6538 | 2000-10-24 Tom Tromey <tromey@cygnus.com> |
6539 | ||
6540 | * lex.c (java_new_lexer): Initialize new fields. Work around | |
6541 | broken iconv() implementations. | |
6542 | (java_read_char): Swap bytes if required. Use fallback decoder if | |
6543 | required. | |
6544 | (byteswap_init, need_byteswap): New globals. | |
6545 | (java_destroy_lexer): Only close iconv handle if it is in use. | |
6546 | * lex.h (java_lexer): New fields read_anything, byte_swap, | |
6547 | use_fallback. | |
6548 | Made out_buffer unsigned. | |
6549 | ||
8ac1de05 APB |
6550 | 2000-10-24 Alexandre Petit-Bianco <apbianco@cygnus.com> |
6551 | ||
6552 | * parse.y (register_incomplete_type): Include JDEP_FIELD as a case | |
6553 | where an enclosing context can be set on the jdep. | |
6554 | (do_resolve_class): Fixed identation. | |
6555 | ||
80393943 KG |
6556 | 2000-10-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
6557 | ||
6558 | * gjavah.c (NEED_PEEK_ATTRIBUTE, NEED_SKIP_ATTRIBUTE): Define | |
f6bbde28 | 6559 | |
80393943 KG |
6560 | * jcf-reader.c (peek_attribute, skip_attribute): Only define |
6561 | when requested. | |
6562 | ||
6563 | * parse.h (yyerror): If JC1_LITE, mark with ATTRIBUTE_NORETURN. | |
6564 | ||
6565 | * verify.c (CHECK_PC_IN_RANGE): Cast result of stmt-expr to void. | |
6566 | ||
c7303e41 APB |
6567 | 2000-10-18 Alexandre Petit-Bianco <apbianco@cygnus.com> |
6568 | ||
6569 | * jcf-write.c (OP1): Update `last_bc'. | |
6570 | (struct jcf_block): Fixed indentation and typo in comments. New | |
6571 | field `last_bc'. | |
6572 | (generate_bytecode_insns): Insert `nop' if `jsr' immediately | |
6573 | follows `monitorenter'. | |
6574 | * parse.y (patch_synchronized_statement): New local `tmp'. Call | |
6575 | `patch_string'. | |
6576 | Fixes gcj/232. | |
6577 | ||
316a06a1 TT |
6578 | 2000-10-16 Tom Tromey <tromey@cygnus.com> |
6579 | ||
6580 | * jvspec.c (lang_specific_driver): Recognize -MF and -MT. | |
6581 | * lang-specs.h: Added %{MA}, %{MF*}, %{MT*}. | |
6582 | * lang-options.h: Added -MA, -MT, -MF.. | |
6583 | * lang.c (lang_decode_option): Recognize -MA, -MT, -MF. | |
6584 | (DEPEND_TARGET_SET): New macro. | |
6585 | (DEPEND_FILE_ALREADY_SET): Likewise. | |
6586 | (init_parse): Handle new flags. | |
6587 | * jcf.h (jcf_dependency_print_dummies): Declare. | |
6588 | * Make-lang.in (s-java): Added mkdeps.o. | |
6589 | * Makefile.in (BACKEND): Added mkdeps.o. | |
6590 | (../gcjh$(exeext)): Added mkdeps.o. | |
6591 | (../jcf-dump$(exeext)): Added mkdeps.o. | |
6592 | * jcf-depend.c: Include mkdeps.h. | |
6593 | (struct entry, dependencies, targets, MAX_OUTPUT_COLUMNS, | |
6594 | add_entry): Removed. | |
6595 | (jcf_dependency_reset): Rewrote. | |
6596 | (dependencies): New global. | |
6597 | (jcf_dependency_set_target): Rewrote. | |
6598 | (jcf_dependency_add_target): Likewise. | |
6599 | (jcf_dependency_add_file): Likewise. | |
6600 | (munge): Removed. | |
6601 | (print_ents): Removed. | |
6602 | (jcf_dependency_write): Rewrote. | |
6603 | (print_dummies): New global. | |
6604 | (jcf_dependency_print_dummies): New function | |
6605 | (jcf_dependency_write): Call deps_dummy_targets if required. | |
6606 | ||
dba41d30 APB |
6607 | 2000-10-18 Alexandre Petit-Bianco <apbianco@cygnus.com> |
6608 | ||
6609 | * gjavah.c (add_class_decl): Removed unused variables `tname', | |
6610 | `tlen' and `name_index'. | |
6611 | * java-tree.h (BUILD_FILENAME_IDENTIFIER_NODE): New macro. | |
6612 | * jcf-parse.c (jcf_parse_source): Use it and set EXPR_WFL_FILENAME | |
6613 | in `wfl_operator' with value. | |
6614 | (yyparse): Use BUILD_FILENAME_IDENTIFIER_NODE. | |
6615 | (jcf_figure_file_type): Fixed identation. | |
6616 | * lex.c (java_get_line_col): Use EOF. Tuned `^' placement. | |
6617 | * parse.y (analyze_clinit_body): New function. | |
6618 | (static_initializer:): Reset `current_static_block'. | |
6619 | (java_parser_context_restore_global): Set EXPR_WFL_FIILENAME_NODE in | |
6620 | `wfl_operator' with new value. | |
6621 | (lookup_cl): Use EXPR_WFL_FILENAME. | |
6622 | (maybe_yank_clinit): Handle bogus <clinit> bodies, call | |
6623 | analyze_clinit_body. | |
6624 | (build_outer_field_access): Access to this$<n> built from | |
6625 | current_class, not its outer context. | |
6626 | (build_access_to_thisn): Fixed leading comment. Tidied things up. | |
f6bbde28 | 6627 | (resolve_qualified_expression_name): Handle `T.this' and `T.this.f()'. |
dba41d30 APB |
6628 | (patch_method_invocation): Use `is_static_flag' when already |
6629 | initialized. | |
6630 | (patch_newarray): Removed assignment in ternary operator. | |
6631 | ||
1a2ebe6d APB |
6632 | 2000-10-17 Alexandre Petit-Bianco <apbianco@cygnus.com> |
6633 | ||
dba41d30 | 6634 | * except.c (free_eh_ranges): Don't free `whole_range'. |
1a2ebe6d | 6635 | |
8e7ab3ff AG |
6636 | 2000-10-15 Anthony Green <green@redhat.com> |
6637 | ||
6638 | * decl.c (init_decl_processing): Call init_class_processing before | |
6639 | anything else. | |
6640 | ||
c7303e41 APB |
6641 | 2000-10-13 Alexandre Petit-Bianco <apbianco@cygnus.com> |
6642 | ||
6643 | * check-init.c (check_init): Fixed leading comment. Use | |
6644 | LOCAL_FINAL_P. | |
6645 | * decl.c (push_jvm_slot): Use MAYBE_CREATE_VAR_LANG_DECL_SPECIFIC. | |
6646 | (give_name_to_locals): Likewise. | |
6647 | (lang_mark_tree): Handle FIELD_DECL. Register `am' and `wfl' | |
6648 | fields in lang_decl_var. | |
6649 | * java-tree.h (DECL_FUNCTION_SYNTHETIC_CTOR, | |
6650 | DECL_FUNCTION_ALL_FINAL_INITIALIZED): New macros. | |
6651 | (FIELD_INNER_ACCESS): Removed ugly cast, macro rewritten. | |
6652 | (FIELD_INNER_ACCESS_P, DECL_FIELD_FINAL_IUD, DECL_FIELD_FINAL_LIIC, | |
6653 | DECL_FIELD_FINAL_IERR, DECL_FIELD_FINAL_WFL): New macros. | |
6654 | (LOCAL_FINAL): Rewritten. | |
6655 | (LOCAL_FINAL_P, FINAL_VARIABLE_P, CLASS_FINAL_VARIABLE_P | |
6656 | MAYBE_CREATE_VAR_LANG_DECL_SPECIFIC): New macros. | |
6657 | (struct lang_decl): Fixed comments. Added `synthetic_ctor' and | |
6658 | `init_final' fields. | |
6659 | (struct lang_decl_var): Fixed leading comment. Added `am', `wfl', | |
6660 | `final_uid', `final_liic', `final_ierr' and `local_final' fields. | |
6661 | (TYPE_HAS_FINAL_VARIABLE): New macro. | |
6662 | (struct lang_type): Added `afv' field. | |
6663 | * parse.y (check_static_final_variable_assignment_flag): New function. | |
6664 | (reset_static_final_variable_assignment_flag): Likewise. | |
6665 | (check_final_variable_local_assignment_flag): Likewise. | |
6666 | (reset_final_variable_local_assignment_flag): Likewise. | |
6667 | (check_final_variable_indirect_assignment): Likewise. | |
6668 | (check_final_variable_global_assignment_flag): Likewise. | |
6669 | (add_inner_class_fields): Use LOCAL_FINAL_P. | |
6670 | (register_fields): Handle local finals and final variables. | |
6671 | (craft_constructor): Set DECL_FUNCTION_SYNTHETIC_CTOR. | |
6672 | (declare_local_variables): Call MAYBE_CREATE_VAR_LANG_DECL_SPECIFIC. | |
6673 | (source_start_java_method): Call MAYBE_CREATE_VAR_LANG_DECL_SPECIFIC | |
6674 | on local finals. | |
6675 | (java_complete_expand_methods): Loop to set | |
6676 | TYPE_HAS_FINAL_VARIABLE. Call | |
f6bbde28 | 6677 | `reset_final_variable_local_assignment_flag' and |
c7303e41 APB |
6678 | `check_final_variable_local_assignment_flag' accordingly before |
6679 | and after constructor expansion. Call | |
6680 | `reset_static_final_variable_assignment_flag' | |
f6bbde28 | 6681 | before expanding <clinit> and after call |
c7303e41 APB |
6682 | `check_static_final_variable_assignment_flag' if the |
6683 | current_class isn't an interface. After all methods have been | |
6684 | expanded, call `check_final_variable_global_assignment_flag' and | |
6685 | `check_static_final_variable_assignment_flag' if the current class | |
f6bbde28 | 6686 | is an interface. |
c7303e41 APB |
6687 | (maybe_yank_clinit): Fixed typo in comment. |
6688 | (build_outer_field_access_methods): Removed old sanity check. Use | |
6689 | FIELD_INNER_ACCESS_P. Call MAYBE_CREATE_VAR_LANG_DECL_SPECIFIC. | |
6690 | Don't create access methods for finals. | |
6691 | (resolve_field_access): Use `CLASS_FINAL_VARIABLE_P'. | |
6692 | (java_complete_tree): Likewise. Reset DECL_FIELD_FINAL_IUD if | |
f6bbde28 | 6693 | existing DECL_INIT has been processed. |
c7303e41 APB |
6694 | (java_complete_lhs): Likewise. |
6695 | (check_final_assignment): Filter input on `lvalue''s TREE_CODE. | |
6696 | Test for COMPONENT_REF to get to the FIELD_DECL. Implemented new | |
6697 | logic. | |
6698 | (patch_assignment): Use LOCAL_FINAL_P. | |
6699 | (fold_constant_for_init): Reset DECL_FIELD_FINAL_IUD if | |
6700 | DECL_INITIAL is nullified. | |
6701 | Fixes gcj/163. | |
6702 | ||
4b945402 KG |
6703 | 2000-10-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
6704 | ||
6705 | * Make-lang.in (parse.c, parse-scan.c): Create atomically. | |
f6bbde28 | 6706 | |
4b945402 KG |
6707 | * Makefile.in (parse.c, parse-scan.c): Likewise. |
6708 | ||
1f8f4a0b MM |
6709 | 2000-10-12 Mark Mitchell <mark@codesourcery.com> |
6710 | ||
6711 | * class.c (temporary_obstack): Remove. | |
6712 | (make_class): Don't mess with obstascks. | |
6713 | (push_class): Likewise. | |
6714 | (set_super_info): Likewise. | |
6715 | (add_method_1): Likewise. | |
6716 | (add_method): Likewise. | |
6717 | (add_field): Likewise. | |
6718 | (build_utf8_ref): Likewise. | |
6719 | (build_class_ref): Likewise. | |
6720 | (build_static_field_ref): Likewise. | |
6721 | (finish_class): Likewise. | |
6722 | (push_super_field): Likewise. | |
6723 | (layout_class): Likewise. | |
6724 | (layout_class_methods): Likewise. | |
6725 | (init_class_processing): Likewise. | |
6726 | * constants.c (get_tag_node): Likewise. | |
6727 | (build_constant_data_ref): Likewise. | |
6728 | * decl.c (ggc_p): Remove. | |
6729 | (copy_lang_decl): Use ggc_alloc. | |
6730 | (complete_start_java_method): Don't mess with obstacks. | |
6731 | (start_java_method): Likewise. | |
6732 | (end_java_method): Likewise. | |
6733 | * except.c (link_handler): Use xmalloc. | |
6734 | (free_eh_ranges): New function. | |
6735 | (method_init_exceptions): Use it. | |
6736 | (add_handler): Use xmalloc. | |
6737 | (expand_start_java_handler): Don't mess with obstacks. | |
6738 | (prepare_eh_table_type): Likewise. | |
6739 | (expand_end_java_handler): Likewise. | |
6740 | * expr.c (push_value): Likewise. | |
6741 | (create_label_decl): Likewise. | |
6742 | (build_jni_stub): Likewise. | |
6743 | (java_lang_expand_expr): Likewise. | |
6744 | (note_instructions): Use xrealloc. | |
6745 | (java_push_constant_from_pool): Don't mess with obstacks. | |
6746 | (process_jvm_instruction): Likewise. | |
6747 | * java-tree.h (cyclic_inheritance_report): Remove duplicate | |
6748 | declaration. | |
6749 | * jcf-parse.c (get_constant): Don't mess with obstacks. | |
6750 | (read_class): Likewise. | |
6751 | (jcf_parse): Likewise. | |
a83f01f0 | 6752 | * lex.c (expression_obstack): Remove. |
1f8f4a0b MM |
6753 | (java_lex): Don't use obstack_free. |
6754 | * parse.h (exit_java_complete_class): Don't mess with obstacks. | |
6755 | (MANGLE_OUTER_LOCAL_VARIABLE_NAME): Adjust. | |
6756 | (MANGLE_ALIAS_INITIALIZER_PARAMETER_NAME_ID): Likewise. | |
6757 | (MANGLE_ALIAS_INITIALIZER_PARAMETER_NAME_STRING): Likewise. | |
6758 | * parse.y (gaol): Add more GC roots. | |
6759 | (add_inner_class_fields): Adjust calls to MANGLE_* macros. | |
6760 | (lookup_field_wrapper): Likewise. | |
6761 | (obtain_incomplete_type): Don't mess with obstacks. | |
a83f01f0 | 6762 | (build_alias_initializer_parameter_list): Adjust calls to MANGLE_* |
1f8f4a0b MM |
6763 | macros. |
6764 | (craft_constructor): Don't mess with obstacks. | |
6765 | (safe_layout_class): Likewise. | |
6766 | (java_complete_class): Likewise. | |
6767 | (source_end_java_method): Likewise. | |
6768 | (build_outer_field_access_methods): Likewise. | |
6769 | (build_outer_method_access_method): Likewise. | |
6770 | (maybe_build_thisn_access_method): Likewise. | |
6771 | (build_dot_class_method_invocation): Likewise. | |
6772 | (java_complete_tree): Likewise. | |
6773 | (java_complete_lhs): Likewise. | |
6774 | (do_merge_string_cste): Likewise. | |
6775 | (patch_string_cst): Likewise. | |
6776 | (array_constructor_check_entry): Likewise. | |
6777 | * typeck.c (build_java_array_type): Likewise. | |
6778 | (parse_signature_string): Likewise. | |
6779 | (build_java_signature): Likewise. | |
f6bbde28 | 6780 | |
3c1d1e7b TT |
6781 | 2000-10-12 Tom Tromey <tromey@cygnus.com> |
6782 | ||
6783 | Fix for PR gcj/356: | |
6784 | * gjavah.c (add_class_decl): Don't special-case inner classes. | |
6785 | (add_namelet): Likewise. | |
6786 | ||
a93eddcf APB |
6787 | 2000-10-11 Rodney Brown <RodneyBrown@mynd.com> |
6788 | ||
6789 | * java-tree.h: Constify current_encoding. | |
6790 | * lang.c: Constify current_encoding. | |
6791 | ||
6792 | 2000-10-10 Jeff Sturm <jeff.sturm@appnet.com> | |
6793 | ||
6794 | * jvgenmain.c (class_mangling_suffix): Omit `.'. | |
6795 | (main): Use `$' when NO_DOLLAR_IN_LABEL is not set, otherwise `.'. | |
6796 | ||
6797 | 2000-10-10 Alexandre Petit-Bianco <apbianco@cygnus.com> | |
6798 | ||
6799 | * expr.c (java_lang_expand_expr): Reinstall 1999-08-14 Anthony's | |
6800 | patch. Fixes gcj/340. | |
6801 | ||
2e165c53 TT |
6802 | 2000-10-10 Tom Tromey <tromey@cygnus.com> |
6803 | ||
6804 | * lex.c (java_new_lexer): Initialize out_first and out_last | |
6805 | fields. | |
6806 | * lex.h (java_lexer): Added out_buffer, out_first, out_last. | |
6807 | ||
c7303e41 APB |
6808 | 2000-10-09 Alexandre Petit-Bianco <apbianco@cygnus.com> |
6809 | ||
6810 | * parse.y (pop_current_osb): New function. | |
6811 | (array_type:): Use `dims:', changed actions | |
6812 | accordingly. Suggested by Anthony Green. | |
6813 | (array_creation_expression:): Used pop_current_osb. | |
6814 | (cast_expression:): Likewise. | |
6815 | (search_applicable_method_list): Fixed indentation. | |
6816 | ||
6817 | 2000-10-08 Anthony Green <green@redhat.com> | |
6818 | ||
6819 | * parse.y (array_type_literal): Remove production. | |
6820 | (type_literals): Refer to array_type, not array_type_literal. | |
6821 | ||
29f8b718 APB |
6822 | 2000-10-07 Alexandre Petit-Bianco <apbianco@cygnus.com> |
6823 | ||
6824 | Patch contributed by Corey Minyard. | |
6825 | * decl.c (check_local_named_variable): New function. | |
6826 | (tree check_local_unnamed_variable): Likewise. | |
6827 | (find_local_variable): Splitted. Call check_local_{un}named_variable. | |
6828 | ||
7fd9a516 AG |
6829 | 2000-10-07 Anthony Green <green@redhat.com> |
6830 | ||
6831 | * class.c (layout_class): Handle case where superclass can't be | |
6832 | layed out yet. | |
6833 | ||
20d431c9 JM |
6834 | 2000-10-07 Joseph S. Myers <jsm28@cam.ac.uk> |
6835 | ||
6836 | * Makefile.in (keyword.h): Refer to GNU FTP site for updated | |
6837 | gperf. | |
6838 | ||
e0a0c416 TT |
6839 | 2000-10-05 Tom Tromey <tromey@cygnus.com> |
6840 | ||
6841 | * jvspec.c (jvgenmain_spec): Added `-fdollars-in-identifiers'. | |
6842 | * jvgenmain.c (class_mangling_prefix): Removed. | |
6843 | (class_mangling_suffix): New global. | |
6844 | (main): Use it. | |
6845 | * gjavah.c (cxx_keyword_subst): Mangle C++ keywords by appending | |
6846 | `$'. | |
6847 | (print_method_info): Handle overrides for static and final | |
6848 | methods. | |
6849 | (process_file): Generate declaration for class object field. | |
6850 | * class.c (cxx_keywords): New array. | |
6851 | (utf8_cmp): New function. | |
6852 | (cxx_keyword_p): New function. | |
6853 | (layout_class_method): Mangle C++ keywords by appending `$'. | |
6854 | (mangle_field): New function. | |
6855 | (mangle_class_field): Use mangle_field. Mangle class name as | |
6856 | `class$'. | |
6857 | (mangle_static_field): Use mangle_field. | |
6858 | ||
62c9aa5f | 6859 | 2000-10-03 Alexandre Petit-Bianco <apbianco@cygnus.com> |
6e22695a APB |
6860 | |
6861 | * decl.c (find_local_variable): Removed uncessary type check and | |
6862 | fixed range check typo. From Corey Minyard. | |
6863 | ||
62c9aa5f | 6864 | 2000-09-13 Alexandre Petit-Bianco <apbianco@cygnus.com> |
6e22695a APB |
6865 | |
6866 | * decl.c (give_name_to_locals): New local `code_offset'. Call | |
e64c46ce | 6867 | `maybe_adjust_start_pc'. |
6e22695a APB |
6868 | * expr.c (note_instructions): New function. |
6869 | (expand_byte_code): Don't collect insn starts here. | |
6870 | (peek_opcode_at_pc): New function. | |
6871 | (maybe_adjust_start_pc): Likewise. | |
6872 | * java-tree.h (maybe_adjust_start_pc): Declare. | |
6873 | (note_instructions): Likewise. | |
dba41d30 | 6874 | * jcf-parse.c (parse_class_file): Call `note_instructions'. |
6e22695a | 6875 | |
62c9aa5f | 6876 | 2000-09-13 Alexandre Petit-Bianco <apbianco@cygnus.com> |
6e22695a APB |
6877 | |
6878 | * parse.y (field_access:): Fixed indentation. | |
6879 | (qualify_ambiguous_name): Properly qualify `this.a[b].c'. | |
6880 | ||
7e51098e TT |
6881 | 2000-09-07 Tom Tromey <tromey@cygnus.com> |
6882 | ||
6883 | Fix for PR gcj/307: | |
6884 | * parse.y (patch_binop): Use JNUMERIC_TYPE_P, not | |
6885 | JPRIMITIVE_TYPE_P, for arithmetic operators. | |
6886 | (patch_method_invocation): Indentation fix. | |
6887 | (try_builtin_assignconv): Handle boolean specially. Fixed typo. | |
6888 | (valid_builtin_assignconv_identity_widening_p): Handle boolean. | |
6889 | (do_unary_numeric_promotion): Cleaned up code. | |
6890 | (valid_cast_to_p): Handle boolean correctly. | |
6891 | ||
5beededc TT |
6892 | 2000-09-27 Tom Tromey <tromey@cygnus.com> |
6893 | ||
6894 | * lex.c (java_read_unicode): Reset bs_count when finished with | |
6895 | `\u' sequence. | |
6896 | ||
f15b9af9 MM |
6897 | 2000-10-01 Mark Mitchell <mark@codesourcery.com> |
6898 | ||
6899 | Convert to GC. | |
6900 | * Make-lang.in (s-java): Don't depend on ggc-callbacks.o. | |
6901 | * Makefile.in (BACKEND): Don't include ggc-callbacks.o. | |
6902 | (typeck.o): Depend on ggc.h. | |
6903 | * class.c (add_method_1): Use GC functions for allocation. | |
6904 | (init_class_processing): Register roots. | |
6905 | * decl.c (ggc_p): Set to 1. | |
6906 | (pending_local_decls): Make it static. | |
6907 | (push_jvm_slot): Use GC functions for allocation. | |
6908 | (init_decl_processing): Register roots. | |
6909 | (give_name_to_locals): Use GC functions for allocation. | |
6910 | (lang_mark_tree): New function. | |
6911 | * java-tree.h (MAYBE_CREATE_TYPE_TYPE_LANG_SPECIFIC): Use GC | |
6912 | functions for allocation. | |
6913 | * jcf-parse.c (jcf_parse_source): Use ggc_strdup. | |
6914 | * lex.c (java_lex): Use build_string, rather than replicating it | |
6915 | inline. | |
6916 | * parse.y (goal): Add more roots. | |
6917 | (mark_parser_ctxt): New function. | |
6918 | * typeck.c: Include ggc.h. | |
f6bbde28 | 6919 | |
99eaf8d4 APB |
6920 | 2000-09-29 Alexandre Petit-Bianco <apbianco@cygnus.com> |
6921 | ||
6922 | * parse.y (maybe_yank_clinit): Also keep <clinit> if its body | |
6923 | contains something else than MODIFY_EXPR. | |
6924 | ||
19e223db MM |
6925 | 2000-09-23 Mark Mitchell <mark@codesourcery.com> |
6926 | ||
6927 | * Make-lang.in (JAVA_SRCS): Include java-tree.h. | |
6928 | * Makefile.in (parse.o): Depend on ggc.h. | |
6929 | (class.o): Likewise. | |
6930 | (constants.o): Likewise. | |
6931 | (decl.o): Likewise. | |
6932 | (expr.o): Likewise. | |
6933 | (jcf-parse.o): Likewise. | |
6934 | (jcf-write.o): Likewise. | |
6935 | (mangle.o): Likewise. | |
6936 | * class.c: Include ggc.h. | |
6937 | (build_static_field_ref): Register GC roots. | |
6938 | (layout_class): Likewise. | |
6939 | (init_class_processing): Likewise. | |
6940 | * constants.c: Include ggc.h. | |
6941 | (current_constant_pool_data_ref): Remove. | |
6942 | (tag_nodes): Move it to ... | |
6943 | (get_tag_node): ... here. Register GC roots. | |
6944 | * decl.c: Include ggc.h. Remove many global tree definitions. | |
6945 | (throw_node): Define. | |
6946 | (java_global_trees): Likewise. | |
6947 | (predef_filenames): Make the size a constant. | |
6948 | (init_decl_processing): Adjust accordingly. | |
6949 | (init_decl_processing): Call init_jcf_parse. Register GC roots. | |
6950 | * expr.c: Include ggc.h. | |
6951 | (init_expr_processing): Register GC roots. | |
6952 | (build_invokeinterface): Likewise. | |
6953 | * java-tree.h: Replace extern tree declarations with macros. | |
6954 | (java_global_trees): New variable. | |
6955 | (java_tree_index): New enumeration. | |
6956 | (init_jcf_parse): Declare. | |
6957 | * jcf-parse.c: Include ggc.h. | |
6958 | (current_class): Remove declaration. | |
6959 | (main_class): Likewise. | |
6960 | (all_class_list): Likewise. | |
6961 | (predefined_filename_p): Adjust for constant size of | |
6962 | predef_filenames. | |
6963 | (init_jcf_parse): New function. | |
6964 | * jcf-write.c: Include ggc.h. | |
6965 | (generate_classfile): Register GC roots. | |
6966 | (append_synthetic_attribute): Likewise. | |
6967 | (append_innerclass_attribute_entry): Likewise. | |
6968 | * lang.c: Include ggc.h. | |
6969 | (lang_print_error): Register GC roots. | |
6970 | * parse.h (struct parser_ctxt): Rename fields to avoid conflicts | |
6971 | with macros. | |
6972 | * parse.y: Include ggc.h. | |
6973 | (wfl_operator): Remove. | |
6974 | (goal): Register GC roots. | |
6975 | (java_pop_parser_context): Adjust for new field names. | |
6976 | (java_parser_context_save_global): Likewse. | |
6977 | (java_parser_context_restore_global): Likewise. | |
6978 | (java_parser_context_suspend): Likewise. | |
6979 | (java_parser_context_resume): Likewise. | |
6980 | (verify_constructor_circularity): Register GC roots. | |
6981 | (lookup_cl): Likewise. | |
6982 | (java_reorder_fields): Likewise. | |
6983 | (build_current_this): Likewise. | |
6984 | (class_in_current_package): Likewise. | |
6985 | (argument_types_convertible): Likewise. | |
6986 | (patch_cast): Rename wfl_op parameter to avoid macro conflicts. | |
f6bbde28 | 6987 | |
4c4b521a TT |
6988 | 2000-09-14 Tom Tromey <tromey@cygnus.com> |
6989 | ||
6990 | * lex.h: Use HAVE_ICONV_H, not HAVE_ICONV. | |
6991 | ||
6b8a24cd TT |
6992 | 2000-09-13 Tom Tromey <tromey@cygnus.com> |
6993 | ||
6994 | * jcf-parse.c: Include <locale.h>. | |
6995 | * jv-scan.c: Include <locale.h>. | |
6996 | ||
86e4b1e4 TT |
6997 | 2000-09-12 Tom Tromey <tromey@cygnus.com> |
6998 | ||
6999 | * expr.c (pop_type_0): Return `Object' if trying to merge two | |
7000 | interface types. | |
7001 | * verify.c (merge_types): Don't return `TYPE_UNKNOWN' for | |
7002 | interface types; `Object' is always a valid supertype. | |
7003 | ||
d19cbcb5 TT |
7004 | 2000-09-12 Tom Tromey <tromey@cygnus.com> |
7005 | ||
7006 | Fix for PR gcj/33: | |
7007 | * jv-scan.c (help): Document --encoding. | |
7008 | (options): Added `encoding' entry. | |
7009 | (OPT_ENCODING): New define. | |
7010 | (main): Handle --encoding. | |
7011 | Include <langinfo.h> if nl_langinfo exists. | |
7012 | * lang-options.h: Document --classpath, --CLASSPATH, --main, and | |
7013 | --encoding. | |
7014 | * jcf-parse.c Include <langinfo.h> if we have nl_langinfo. | |
7015 | (parse_source_file): Correctly call java_init_lex. Added `finput' | |
7016 | argument. Use nl_langinfo to determine default encoding. | |
7017 | * java-tree.h (current_encoding): Declare. | |
7018 | * parse.y (java_parser_context_restore_global): Don't restore | |
7019 | `finput'. | |
7020 | (java_parser_context_save_global): Don't set `finput' field. | |
7021 | (java_pop_parser_context): Don't restore `finput'. Free old lexer | |
7022 | if required. | |
7023 | * lang.c (current_encoding): New global. | |
7024 | (lang_decode_option): Recognize `-fencoding='. | |
7025 | (finish_parse): Don't close finput. | |
7026 | * parse.h (struct parser_ctxt): Removed `finput' and | |
7027 | `unget_utf8_value' fields. Added `lexer' field. | |
7028 | (java_init_lex): Fixed declaration. | |
7029 | * lex.c (java_new_lexer): New function. | |
7030 | (java_destroy_lexer): Likewise. | |
7031 | (java_read_char): Added `lex' argument. Handle iconv case. | |
7032 | (java_read_unicode): Added `lex' argument. Count backslashes in | |
7033 | lexer structure. | |
7034 | (java_init_lex): Added `finput' and `encoding' arguments. Set | |
7035 | `lexer' field in ctxp. | |
7036 | (BAD_UTF8_VALUE): Removed. | |
7037 | (java_lex): Handle seeing UEOF in the middle of a string literal. | |
7038 | * lex.h: Include <iconv.h> if HAVE_ICONV defined. | |
7039 | (java_lexer): New structure. | |
7040 | (UNGETC): Removed. | |
7041 | (GETC): Removed. | |
7042 | (DEFAULT_ENCODING): New define. | |
7043 | (java_destroy_lexer): Declare. | |
7044 | ||
ee17a290 TT |
7045 | 2000-09-12 Tom Tromey <tromey@cygnus.com> |
7046 | ||
7047 | Fix for PR gcj/343: | |
7048 | * lex.c (java_init_lex): Initialize java_io_serializable. | |
7049 | * parse.y (java_io_serializable): New global. | |
7050 | (valid_ref_assignconv_cast_p): An array can be cast to | |
7051 | serializable. | |
7052 | ||
d8ea8f28 ZW |
7053 | 2000-09-10 Zack Weinberg <zack@wolery.cumb.org> |
7054 | ||
7055 | * decl.c, expr.c: Include defaults.h if not already included. | |
7056 | Don't define the *_TYPE_SIZE macros. | |
7057 | ||
0caae6dd GK |
7058 | 2000-09-09 Geoffrey Keating <geoffk@cygnus.com> |
7059 | ||
7060 | * typeck.c (build_java_array_type): Correct first parameter | |
7061 | in ADJUST_FIELD_ALIGN invocation. | |
7062 | ||
f0bee8b3 TT |
7063 | 2000-09-06 Tom Tromey <tromey@cygnus.com> |
7064 | ||
7065 | * lang-specs.h: Also recognize `-femit-class-files'. | |
7066 | ||
3e99f50c APB |
7067 | 2000-09-05 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7068 | ||
7069 | * verify.c (merge_types): Load the types to merge if necessary. | |
7070 | ||
3ca8c9ae AG |
7071 | 2000-09-02 Anthony Green <green@redhat.com> |
7072 | ||
7073 | * jcf-io.c: Include zlib.h. | |
7074 | (open_in_zip): Read compressed class file archives. | |
7075 | * zipfile.h (ZipDirectory): Add uncompressed_size and | |
7076 | compression_method fields. | |
7077 | * zextract.c (read_zip_archive): Collect file compression info. | |
7078 | ||
e1d565ab BM |
7079 | 2000-08-15 Bryce McKinlay <bryce@albatross.co.nz> |
7080 | ||
f6bbde28 | 7081 | * parse.y (do_resolve_class): Also explore superclasses of |
e1d565ab BM |
7082 | intermediate enclosing contexts when searching for inner classes. |
7083 | ||
29f8b718 APB |
7084 | 2000-08-11 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7085 | ||
7086 | * parse.y (variable_declarator_id:): Better error message. | |
7087 | (expression_statement:): Use YYNOT_TWICE. | |
7088 | (cast_expression:): Likewise. | |
7089 | (assignment:): Likewise. | |
7090 | ||
354e99ce APB |
7091 | 2000-08-11 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7092 | ||
7093 | * parse.y (do_merge_string_cste): New locals. Create new | |
7094 | STRING_CSTs each time, use memcpy. Fixes gcj/311. | |
7095 | ||
7c097ee9 HB |
7096 | 2000-08-07 Hans Boehm <boehm@acm.org> |
7097 | ||
7098 | * boehm.c (mark_reference_fields): Set marking bits for all words in | |
7099 | a multiple-word record. | |
7100 | (get_boehm_type_descriptor): Use the procedure marking descriptor for | |
7101 | java.lang.Class. | |
f6bbde28 | 7102 | |
3d919a0e MS |
7103 | 2000-08-31 Mike Stump <mrs@wrs.com> |
7104 | ||
7105 | * Make-lang.in (jc1$(exeext), gcjh$(exeext), jv-scan$(exeext), | |
7106 | jcf-dump$(exeext)): Make parallel safe. | |
7107 | ||
63ad61ed ZW |
7108 | 2000-08-29 Zack Weinberg <zack@wolery.cumb.org> |
7109 | ||
7110 | * jcf-parse.c (set_source_filename): Constify a char *. | |
7111 | * jcf-write.c (append_innerclasses_attribute, | |
7112 | make_class_file_name): Constify a char *. Don't recycle a | |
7113 | variable for an unrelated purpose. | |
7114 | * parse.y: (build_alias_initializer_parameter_list): Constify a char *. | |
7115 | (breakdown_qualified): Do not modify IDENTIFIER_POINTER strings. | |
7116 | ||
c00f0fb2 APB |
7117 | 2000-08-29 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7118 | ||
7119 | * expr.c (can_widen_reference_to): Fixed indentation. | |
7120 | * java-tree.h (CLASS_METHOD_CHECKED_P): Added leading comment. | |
7121 | * parse.y: `finit$' replaces `$finit$' in comments. | |
7122 | (try_builtin_assignconv): Fixed leading comment. | |
7123 | ||
94574545 GM |
7124 | 2000-08-25 Greg McGary <greg@mcgary.org> |
7125 | ||
7126 | * gjavah.c (cxx_keyword_subst): Use ARRAY_SIZE. | |
7127 | ||
6e2aa220 GM |
7128 | 2000-08-24 Greg McGary <greg@mcgary.org> |
7129 | ||
7130 | * lang.c (lang_decode_option): Use ARRAY_SIZE. | |
7131 | * parse.y (BINOP_LOOKUP): Likewise. | |
7132 | ||
9b1ee05b AH |
7133 | 2000-08-22 Andrew Haley <aph@cygnus.com> |
7134 | ||
7135 | * javaop.h (WORD_TO_INT): Mask lower 32 bits of a jword before | |
7136 | sign extending. Fixes gcj/321. | |
7137 | * jcf-parse.c (get_constant): Mask lower 32 bits of a jint before | |
7138 | combining to make a jlong. Fixes gcj/321. | |
7139 | ||
05a3d06e | 7140 | 2000-08-21 Nix <nix@esperi.demon.co.uk> |
f6bbde28 | 7141 | |
05a3d06e N |
7142 | * lang-specs.h: Do not process -o or run the assembler if |
7143 | -fsyntax-only. | |
7144 | ||
65f69237 AH |
7145 | 2000-08-16 Andrew Haley <aph@cygnus.com> |
7146 | ||
7147 | * typeck.c (build_java_array_type): Rewrite code to do array | |
7148 | alignment. Take into account back-end macros when aligning array | |
7149 | data. Remove setting of TYPE_USER_ALIGN; Java doesn't allow the | |
7150 | user to set alignment. Fixes gcj/252 and 160. | |
7151 | ||
2e0f0aff TT |
7152 | 2000-08-09 Tom Tromey <tromey@cygnus.com> |
7153 | ||
1175b9b4 TT |
7154 | * parse.y (check_abstract_method_definitions): Now return `int'. |
7155 | Check implemented interfaces. Fixes PR gcj/305. | |
7156 | ||
2e0f0aff TT |
7157 | * parse.y (patch_switch_statement): Disallow `long' in switch |
7158 | expressions. Fixes PR gcj/310. | |
7159 | ||
25bdcbc5 APB |
7160 | 2000-08-15 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7161 | ||
7162 | * decl.c (finit_leg_identifier_node): New global. | |
7163 | (init_decl_processing): Use `finit$' to initialize | |
7164 | finit_identifier_node. Use `$finit$' to initialize | |
7165 | finit_leg_identifier_node. | |
7166 | * expr.c (expand_java_field_op): Use ID_FINIT_P. | |
7167 | * java-tree.h (finit_identifier_node): Changed attached comment. | |
7168 | (finit_leg_identifier_node): New declaration. | |
7169 | (ID_FINIT_P): Take finit_identifier_node and | |
7170 | finit_leg_identifier_node into account. This is a backward | |
7171 | compatibility hack. | |
7172 | ||
81baa09a APB |
7173 | 2000-08-14 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7174 | ||
7175 | * jcf-write.c (generate_bytecode_conditional): Re-installed lost | |
7176 | Jan 6 2000 patch. | |
7177 | (generate_bytecode_insns): Check `nargs' before emitting it. | |
7178 | * verify.c (merge_type_state): Fixed typo. | |
7179 | * ChangeLog: Fixed typo in some jcf-write.c entries mentioning | |
7180 | generate_bytecode_{conditional,insns}. | |
7181 | ||
62c9aa5f | 7182 | 2000-08-13 Anthony Green <green@redhat.com> |
458530ee AG |
7183 | |
7184 | * check-init.c (check_init): Add case for BIT_FIELD_REF (required | |
7185 | for -pg builds). | |
7186 | ||
34d4df06 APB |
7187 | 2000-08-10 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7188 | ||
7189 | * class.c (maybe_layout_super_class): Fixed indentation. | |
7190 | * java-tree.h (CLASS_METHOD_CHECKED_P): New macro. | |
7191 | (java_check_methods): New function declaration. | |
7192 | * jcf-parse.c (get_constant): Let `char_len' go up to 3. Use `str' | |
7193 | instead of `str_ptr'. | |
7194 | * jcf-write.c (generate_bytecode_insns): Emit number the of args | |
7195 | of a `invokeinterface' at the right time. | |
7196 | * parse.h (WFL_STRIP_BRACKET): New macro. | |
7197 | (SET_TYPE_FOR_RESOLUTION): Use it. | |
dba41d30 | 7198 | * parse.y (build_unresolved_array_type): Reuse `type_or_wfl'. |
34d4df06 APB |
7199 | (check_class_interface_creation): Don't check for cross package |
7200 | innerclass name clashes. | |
dba41d30 | 7201 | (method_header): Behave properly if MDECL is `error_mark_node'. |
34d4df06 APB |
7202 | (method_declarator): Return `error_mark_node' if bogus current |
7203 | class. | |
7204 | (resolve_class): Apply WFL_STRIP_BRACKET on `cl' if necessary. | |
7205 | (resolve_and_layout): New local `decl_type', set and used. Call | |
7206 | java_check_methods. | |
7207 | (java_check_methods): New method. | |
7208 | (java_layout_classes): Use it. | |
7209 | (resolve_qualified_expression_name): No EH check necessary in | |
7210 | access$<n>. | |
7211 | (java_complete_lhs): Use VAR_DECL's DECL_INITIAL when evaluating | |
7212 | `case' statement. | |
7213 | (patch_assignment): Set DECL_INITIAL on integral final local. | |
7214 | ||
5f1c312a APB |
7215 | 2000-08-08 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7216 | ||
7217 | * java-tree.h (flag_extraneous_semicolon): New extern. | |
7218 | * lang-options.h: (-Wextraneous-semicolon): New option. | |
7219 | * lang.c (flag_redundant): Fixed typo in leading comment. | |
7220 | (flag_extraneous_semicolon): New global. | |
7221 | (lang_decode_option): Set `flag_extraneous_semicolon' when | |
7222 | -Wall. Decode `-Wextraneous-semicolon'. | |
7223 | * parse.y (type_declaration:): Removed `SC_TK' hack, added | |
7224 | `empty_statement' rule. | |
7225 | (class_body_declaration): Likewise. | |
7226 | (method_body:): Accept `;' as a method body. | |
7227 | (static_initializer:): Removed `SC_TK' hack. | |
7228 | (constructor_block_end:): Likewise. | |
7229 | (empty_statement:): Report deprecated empty declaration. Fixes | |
7230 | gcj/295 | |
7231 | ||
25bdcbc5 | 7232 | 2000-08-07 Alexandre Petit-Bianco <apbianco@cygnus.com> |
f0f3a777 APB |
7233 | |
7234 | * parse.y (build_dot_class_method_invocation): Changed parameter | |
dba41d30 | 7235 | name to `type'. Build signature from `type' and convert it to a |
f0f3a777 APB |
7236 | STRING_CST if it's an array. |
7237 | (patch_incomplete_class_ref): `build_dot_class_method_invocation' | |
7238 | to use `ref_type' directly. | |
7239 | ||
62c9aa5f | 7240 | 2000-08-06 Ovidiu Predescu <ovidiu@cup.hp.com> |
64c04091 OP |
7241 | |
7242 | * lang-options.h: Added a comma after the last element to avoid | |
7243 | syntax errors when other languages define additional options. | |
7244 | ||
a36556a8 ZW |
7245 | 2000-08-04 Zack Weinberg <zack@wolery.cumb.org> |
7246 | ||
7247 | * Make-lang.in (jc1, jv-scan): Depend on $(BACKEND), not stamp-objlist. | |
7248 | * Makefile.in: Add BACKEND; delete OBJS, OBJDEPS. | |
7249 | (jc1): Link with $(BACKEND). | |
7250 | (jv-scan): Depend on version.o, not all of $(OBJS) or $(BACKEND). | |
7251 | ||
50e60bc3 ZW |
7252 | 2000-08-02 Zack Weinberg <zack@wolery.cumb.org> |
7253 | ||
37620334 ZW |
7254 | * jvspec.c: Adjust type of second argument to |
7255 | lang_specific_driver, and update code as necessary. | |
7256 | ||
50e60bc3 ZW |
7257 | * class.c (build_dtable_decl): Initialize dummy. |
7258 | ||
f0f3a777 APB |
7259 | 2000-08-01 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7260 | ||
7261 | * parse.y (maybe_yank_clinit): When generating bytecode: non empty | |
7262 | method bodies not to rule out discarding `<clinit>'; don't use | |
7263 | <clinit> to initialize static fields with constant initializers. | |
7264 | ||
7265 | 2000-08-01 Alexandre Petit-Bianco <apbianco@cygnus.com> | |
7266 | ||
7267 | * gjavah.c (print_method_info): Added `synth' parameter. Skip | |
7268 | synthetic methods. | |
7269 | (method_synthetic): New global. | |
7270 | (HANDLE_METHOD): Recognize synthetic method and tell | |
7271 | `print_method_info' about it. | |
7272 | (HANDLE_END_METHOD): Do not issue an additional `;\n' if we're | |
7273 | processing a synthetic method. | |
7274 | * jcf-reader.c (skip_attribute): New function. | |
7275 | ( skip_attribute): Likewise. | |
7276 | ||
7277 | 2000-08-01 Alexandre Petit-Bianco <apbianco@cygnus.com> | |
7278 | ||
7279 | * parse.y (build_outer_field_access): Fixed comments. | |
7280 | (fix_constructors): Emit the initialization of this$<n> before | |
7281 | calling $finit$. | |
7282 | (resolve_qualified_expression_name): Build an access to `decl' if | |
7283 | necessary. | |
7284 | ||
7285 | 2000-07-31 Alexandre Petit-Bianco <apbianco@cygnus.com> | |
7286 | ||
7287 | * parse-scan.y (curent_class): Non longer const. | |
7288 | (inner_qualifier, inner_qualifier_length): Deleted. | |
7289 | (current_class_length): New global. | |
7290 | (bracket_count): Fixed typo in leading comment. | |
7291 | (anonymous_count): New global. | |
7292 | (class_instance_creation_expression:): Handle anonymous classes. | |
7293 | (anonymous_class_creation:): New rule. | |
7294 | (push_class_context): Rewritten. | |
7295 | (pop_class_context): Likewise. | |
7296 | (INNER_QUALIFIER): Macro deleted. | |
7297 | (report_class_declaration): call `push_class_context' when | |
7298 | entering the function. `fprintf' format modified not to use | |
7299 | INNER_QUALIFIER. | |
7300 | (report_class_declaration): Assign `package_name' and | |
a83f01f0 | 7301 | `current_class' to NULL separately. |
f0f3a777 APB |
7302 | |
7303 | 2000-07-31 Alexandre Petit-Bianco <apbianco@cygnus.com> | |
7304 | ||
7305 | * expr.c (build_invokeinterface): Call layout_class_methods on | |
7306 | target interface. | |
7307 | ||
13107ec0 | 7308 | 2000-07-27 Tom Tromey <tromey@cygnus.com> |
f6bbde28 | 7309 | Anthony Green <green@cygnus.com> |
13107ec0 TT |
7310 | Alexandre Petit-Bianco <apbianco@cygnus.com> |
7311 | ||
7312 | * class.c (make_class_data): Create vtable for abstract classes. | |
7313 | (get_dispatch_table): Changed to cope with abstract classes. | |
7314 | ||
da632f2c APB |
7315 | 2000-07-27 Tom Tromey <tromey@cygnus.com> |
7316 | ||
7317 | * parse.y (patch_method_invocation): Don't reverse the argument | |
7318 | list when dealing with anonymous class constructors. Fixed typo in | |
7319 | comment. | |
7320 | ||
7321 | 2000-07-27 Alexandre Petit-Bianco <apbianco@cygnus.com> | |
7322 | ||
7323 | * parse.y (build_alias_initializer_parameter_list): Reverse | |
7324 | crafted list when building aliases for anonymous class | |
7325 | constructors. | |
7326 | ||
1e12ab9b APB |
7327 | 2000-07-25 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7328 | ||
7329 | * parse.y (jdep_resolve_class): Don't bother checking potential | |
7330 | innerclass access if `decl' is NULL. | |
7331 | (find_in_imports_on_demand): TREE_PURPOSE of `import' contains the | |
7332 | WFL. | |
7333 | ||
4c31fe99 APB |
7334 | 2000-07-25 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7335 | ||
7336 | * parse.c: Remove (again.) | |
7337 | ||
1e12ab9b APB |
7338 | 2000-07-24 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7339 | ||
7340 | * parse.y (find_as_inner_class): Removed 2000-07-19 patches. | |
7341 | * jcf-parse.c (HANDLE_INNERCLASSES_ATTRIBUTE): Local `decl' moved | |
7342 | outside the `if' statement, alias to innerclass removed, `decl' | |
7343 | used to mark the class complete. | |
7344 | ||
f4530f43 APB |
7345 | 2000-07-21 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7346 | ||
7347 | * parse.y (simple_name:): Fixed typo in error message. | |
7348 | ||
e7c7bcef APB |
7349 | 2000-07-21 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7350 | ||
7351 | * parse.y (java_complete_lhs): LOOP_EXPR:, SWITCH_EXPR: the node | |
7352 | or its first operand can be error marks. | |
7353 | ||
7354 | 2000-07-20 Alexandre Petit-Bianco <apbianco@cygnus.com> | |
7355 | ||
7356 | * parse.h (SET_TYPE_FOR_RESOLUTION): Use GET_CPC. | |
7357 | * parse.y (method_header): Likewise. | |
7358 | ||
02ae6e2e APB |
7359 | 2000-07-19 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7360 | ||
7361 | * parse.y (process_imports): Consider that one might be trying to | |
7362 | import an innerclass. Fixes gcj/254 | |
7363 | ||
e7c7bcef APB |
7364 | 2000-07-19 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7365 | ||
7366 | * parse.y (find_as_inner_class): Handle the case where the | |
7367 | enclosing context of an innerclass has been loaded as bytecode. | |
7368 | ||
4142b247 APB |
7369 | 2000-07-19 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7370 | ||
f6bbde28 | 7371 | * parse.y (simple_name:): Reject `$' in type names. |
4142b247 APB |
7372 | (resolve_type_during_patch): Use `type' as a second |
7373 | argument to resolve_no_layout. Fixes gcj/257. | |
7374 | ||
cab8e2bd BM |
7375 | 2000-07-18 Bryce McKinlay <bryce@albatross.co.nz> |
7376 | ||
f6bbde28 | 7377 | * parse.y (find_most_specific_methods_list): Select the only |
cab8e2bd BM |
7378 | non-abstract method even if max has been set. |
7379 | Fixes gcj/285, gcj/298. | |
7380 | ||
ca2875c4 JS |
7381 | 2000-07-18 Jeff Sturm <jeff.sturm@appnet.com> |
7382 | ||
7383 | * lang-specs.h: Added %(jc1) to java compiler options. | |
7384 | ||
bfbbc080 ZW |
7385 | 2000-07-14 Zack Weinberg <zack@wolery.cumb.org> |
7386 | ||
7387 | * .cvsignore: New file. | |
7388 | ||
11b26d72 APB |
7389 | 2000-07-13 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7390 | ||
7391 | * parse.y (not_accessible_p): Access granted to innerclasses | |
7392 | (indirectly) extending the reference type. Fixes gcj/249. | |
7393 | ||
7394 | 2000-07-13 Alexandre Petit-Bianco <apbianco@cygnus.com> | |
7395 | ||
7396 | * parse.y (patch_method_invocation): Fixed comment. | |
7397 | (maybe_use_access_method): Build this$<n>s to the context of the | |
7398 | target method, or a type that extends it. Fixes gcj/242. | |
7399 | ||
649c9142 MM |
7400 | 2000-07-13 Mark Mitchell <mark@codesourcery.com> |
7401 | ||
7402 | * parse.c: Remove. | |
7403 | ||
ee97d354 APB |
7404 | 2000-07-13 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7405 | ||
7406 | * parse.y (fold_constant_for_init): Avoid bullish conversion. | |
7407 | ||
44fadf1e TT |
7408 | 2000-07-13 Tom Tromey <tromey@cygnus.com> |
7409 | ||
7410 | * lang-specs.h: Added %{I*}. | |
7411 | ||
ea414c97 ZW |
7412 | 2000-07-13 Zack Weinberg <zack@wolery.cumb.org> |
7413 | ||
7414 | * lang-specs.h: Use the new named specs. Remove unnecessary braces. | |
7415 | ||
792abd35 MM |
7416 | 2000-07-12 Mark Mitchell <mark@codesourcery.com> |
7417 | ||
7418 | * parse-scan.c: Remove. | |
7419 | ||
11b26d72 APB |
7420 | 2000-07-10 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7421 | ||
7422 | * class.c (set_super_info): Handled protected inner classes. | |
7423 | (common_enclosing_context_p): Bail early if arguments aren't both | |
7424 | inner classes. | |
7425 | (get_access_flags_from_decl): Handle private and protected inner | |
7426 | classes. | |
7427 | * java-tree.h (TYPE_PROTECTED_INNER_CLASS): New macro. | |
7428 | (CLASS_PROTECTED): Likewise. | |
dba41d30 | 7429 | (struct lang_type): New bitfield `poic'. |
11b26d72 APB |
7430 | * parse.y (jdep_resolve_class): Call check_inner_class_access on |
7431 | inner classes only. | |
7432 | (check_inner_class_access): Renamed arguments, added | |
7433 | comments. Handles protected inner classes (fixes gcj/225) | |
7434 | (not_accessible_p): Fixed comments. Avoid handling inner classes. | |
7435 | ||
7436 | 2000-07-10 Alexandre Petit-Bianco <apbianco@cygnus.com> | |
7437 | ||
7438 | * parse.y (resolve_qualified_expression_name): Verify qualified | |
dba41d30 | 7439 | access to `this'. Fixes gcj/239. |
11b26d72 | 7440 | |
e67eb1a0 | 7441 | 2000-07-10 Alexandre Petit-Bianco <apbianco@cygnus.com> |
2f2bd00a | 7442 | |
e67eb1a0 APB |
7443 | * jcf-write.c (generate_classfile): Don't install ConstantValue |
7444 | for null pointers. | |
2f2bd00a | 7445 | |
11b26d72 APB |
7446 | 2000-07-07 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7447 | ||
7448 | * parse.y (resolve_qualified_expression_name): Handle inner class | |
7449 | access. Fixes gcj/256. | |
7450 | ||
629d4b4d APB |
7451 | 2000-07-07 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7452 | ||
7453 | * jcf-write.c (generate_classfile): Properly install the | |
7454 | ConstantValue attribute and the initial value constant pool index | |
7455 | on string constants. | |
7456 | * parse.y (java_complete_lhs): Keep DECL_INITIAL when emitting | |
7457 | class files. | |
7458 | ||
0c2b8145 APB |
7459 | 2000-07-06 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7460 | ||
7461 | * parse.h (BUILD_PTR_FROM_NAME): Surround with a do/while | |
7462 | construct. | |
7463 | * parse.y (find_as_inner_class): Fixed typo. | |
7464 | (do_resolve_class): Explore enclosing contexts when searching for | |
7465 | innerclasses. Removed curly brackets around BUILD_PTR_FROM_NAME. | |
7466 | (check_inner_class_access): Check `decl' which can be null in case | |
7467 | of previous errors. | |
7468 | ||
7469 | 2000-07-05 Alexandre Petit-Bianco <apbianco@cygnus.com> | |
7470 | ||
dba41d30 | 7471 | * java-tree.h (java_debug_context): Declared `extern'. |
0c2b8145 APB |
7472 | (safe_layout_class): Likewise. |
7473 | * parse.y (resolve_field_access): Field must be `static' in order | |
7474 | to be replaced by its initial value. Added comments. | |
7475 | (find_applicable_accessible_methods_list): Fixed typo. | |
7476 | (find_most_specific_methods_list): Methods found in innerclasses | |
7477 | take over methods founds in the enclosing contexts. | |
7478 | (java_complete_tree): Loosen restrictions on the type of DECLs | |
7479 | that can be replaced by their initialization values. | |
dba41d30 | 7480 | (valid_ref_assignconv_cast_p): Removed call to `enclosing_context_p'. |
0c2b8145 | 7481 | |
0267da64 TT |
7482 | 2000-07-05 Tom Tromey <tromey@cygnus.com> |
7483 | ||
7484 | * Make-lang.in (PARSE_DIR): New macro. | |
7485 | (PARSE_RELDIR): Likewise. | |
7486 | (PARSE_C): Likewise. | |
7487 | (PARSE_SCAN_C): Likewise. | |
7488 | ($(PARSE_C)): New target. | |
7489 | ($(PARSE_SCAN_C)): Likewise. | |
7490 | (SET_BISON): New macro. | |
7491 | (BISONFLAGS): Likewise. | |
7492 | (JAVABISONFLAGS): Likewise. | |
7493 | ||
1bbee75b BM |
7494 | 2000-07-02 Bryce McKinlay <bryce@albatross.co.nz> |
7495 | ||
f6bbde28 ZW |
7496 | * gjavah.c (HANDLE_METHOD): Call print_method_info with a NULL stream |
7497 | argument on the first pass for CNI as well as JNI. | |
7498 | (print_method_info): Set up method name on the first pass only. | |
7499 | ||
98a52c2c APB |
7500 | 2000-07-01 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7501 | ||
7502 | * parse.y (parser_qualified_classname): Removed parameter | |
7503 | `is_static'. | |
7504 | (create_interface): Removed first passed parameter to | |
7505 | parser_qualified_classname. | |
7506 | (create_class): Likewise. Don't install alias on static | |
7507 | innerclasses. Fixes gcj/275. | |
7508 | ||
7509 | 2000-07-01 Alexandre Petit-Bianco <apbianco@cygnus.com> | |
7510 | ||
7511 | * parse.y (maybe_generate_pre_expand_clinit): Don't build a | |
7512 | debugable statement with empty_stmt_node. Fixes gcj/272 | |
7513 | ||
7514 | 2000-07-01 Alexandre Petit-Bianco <apbianco@cygnus.com> | |
7515 | ||
7516 | * expr.c (build_instanceof): Layout type after it's loaded. Fixes | |
7517 | gcj/271. | |
7518 | ||
c1c8f8cc APB |
7519 | 2000-06-29 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7520 | ||
7521 | * jcf-write.c (push_long_const): Appropriately cast short negative | |
7522 | constant to jword. | |
7523 | ||
cf1b2274 APB |
7524 | 2000-06-29 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7525 | ||
7526 | * parse.y (verify_constructor_super): Use loop variable | |
7527 | `m_arg_type' initialized with `mdecl_arg_type'. | |
7528 | ||
6eaeeb55 TT |
7529 | 2000-06-29 Tom Tromey <tromey@cygnus.com> |
7530 | ||
7531 | * parse.y (resolve_field_access): Handle case where `type_found' | |
7532 | is NULL. | |
7533 | ||
18ee3d5e APB |
7534 | 2000-06-27 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7535 | ||
7536 | * expr.c (lookup_field): The same field can be found through two | |
7537 | different interface. Don't declare it ambiguous in that case. | |
7538 | ||
61d5c158 TT |
7539 | 2000-06-27 Tom Tromey <tromey@cygnus.com> |
7540 | ||
7541 | * lex.c (java_lineterminator): Don't recognize \r after \n. If \r | |
7542 | follows \r, then unget it at a lower level. | |
7543 | ||
70541f45 TT |
7544 | 2000-06-26 Tom Tromey <tromey@cygnus.com> |
7545 | ||
7546 | * parse.y (resolve_field_access): Pass decl, not DECL_INITIAL, to | |
7547 | java_complete_tree. | |
7548 | ||
774d2baf TT |
7549 | 2000-06-25 Tom Tromey <tromey@cygnus.com> |
7550 | ||
7551 | * parse.y (for_statement): Wrap expression in a WFL if it is a | |
7552 | constant. For PR gcj/268. | |
7553 | ||
d6baf6f5 APB |
7554 | 2000-06-25 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7555 | ||
7556 | * parse.y (do_resolve_class): Minor optimiztion in the package | |
17126208 | 7557 | list search. Removed unnecessary test and return statement. |
d6baf6f5 APB |
7558 | (valid_ref_assignconv_cast_p): Order of arguments to |
7559 | enclosing_context_p fixed. | |
7560 | ||
120f0c10 TT |
7561 | 2000-06-24 Tom Tromey <tromey@cygnus.com> |
7562 | ||
ae4a4c88 TT |
7563 | * expr.c (lookup_field): Print error and return error_mark_node if |
7564 | field reference is ambiguous. | |
7565 | ||
120f0c10 TT |
7566 | * parse.y (check_abstract_method_definitions): Also check if |
7567 | `other_method' is abstract. | |
7568 | ||
cf1748bf APB |
7569 | 2000-06-23 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7570 | ||
7571 | * class.c (set_super_info): Handle ACC_PRIVATE for (inner) | |
7572 | classes. | |
7573 | * java-tree.h (TYPE_PRIVATE_INNER_CLASS): New macro. | |
dba41d30 | 7574 | (struct lang_type): New field `pic'. |
cf1748bf APB |
7575 | (CLASS_PRIVATE): New macro. |
7576 | * parse.y (check_inner_class_access): New function. | |
7577 | (jdep_resolve_class): Call it. | |
7578 | ||
f1ff439a TT |
7579 | 2000-06-23 Tom Tromey <tromey@cygnus.com> |
7580 | ||
7581 | * parse.y (patch_incomplete_class_ref): Initialize the returned | |
7582 | class. For PR gcj/260. | |
7583 | ||
9a7ab4b3 APB |
7584 | 2000-06-21 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7585 | ||
7586 | * except.c (prepare_eh_table_type): Use `CATCH_ALL_TYPE'. | |
7587 | ||
7588 | 2000-06-20 Alexandre Petit-Bianco <apbianco@cygnus.com> | |
7589 | ||
7590 | * check-init.c (ENABLE_JC1_CHECKING): Replaces ENABLE_CHECKING for | |
7591 | Java specific checks. | |
7592 | * expr.c (build_instanceof): CLASS_INTERFACE and CLASS_FINAL usage | |
7593 | screened by DECL_P. | |
7594 | * java-tree.def (CASE_EXPR): Marked 'e'. | |
7595 | (DEFAULT_EXPR): Likewise. | |
7596 | * jcf-parse.c (set_source_filename): CLASS_COMPLETE_P usage | |
7597 | screened by DECL_P. | |
7598 | * jcf-write.c (ENABLE_JC1_CHECKING): Replaces ENABLE_CHECKING for | |
7599 | Java specific checks. | |
7600 | (generate_bytecode_insns): Test try_block for BLOCK before using | |
7601 | BLOCK_EXPR_BODY. | |
7602 | * parse.y (build_wfl_wrap): Added `location' argument. Set | |
7603 | EXPR_WFL_LINECOL accordingly. | |
7604 | (dim_expr:): Wrap constants with WFLs. | |
7605 | (method_declarator): Use TREE_TYPE not TYPE_NAME on GET_CPC. | |
7606 | (resolve_package): Check for `stmt' not being a BLOCK before | |
7607 | building a debuggable statement with it. | |
7608 | (make_qualified_primary): Added extra parameter to build_wfl_wrap | |
7609 | invocation. | |
7610 | (resolve_field_access): Make sure `decl' is a DECL before treating | |
7611 | it as such. | |
7612 | (maybe_build_primttype_type_ref): Make sure `wfl''s node is an | |
7613 | IDENTIFIER_NODE before treating it as such. | |
7614 | (patch_new_array_init): Make sure `elt' is a TREE_LIST before | |
7615 | treating it as such. | |
7616 | (find_applicable_accessible_methods_list): CLASS_INTERFACE macro | |
7617 | to be applied only on non array types. | |
7618 | ||
7619 | 2000-06-16 Per Bothner <per@bothner.com> | |
7620 | ||
7621 | * java-tree.h (LABEL_RETURN_LABELS, LABEL_PENDING_CHAIN): Don't | |
7622 | define in terms of DECL_RESULT, as that fails when --enable-checking. | |
f6bbde28 | 7623 | |
ffb1f63d KG |
7624 | 2000-06-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
7625 | ||
7626 | * jcf-write.c (CHECK_PUT): Add static prototype. Make pointer | |
7627 | types the same in comparison. | |
7628 | (CHECK_OP): Add static prototype. | |
7629 | ||
11cf4d18 JJ |
7630 | 2000-06-13 Jakub Jelinek <jakub@redhat.com> |
7631 | ||
7632 | * typeck.c (build_java_array_type): Set TYPE_USER_ALIGN. | |
7633 | * parse.y (java_complete_class): Set DECL_USER_ALIGN. | |
7634 | * parse.c: Rebuilt. | |
7635 | ||
5ac9118e KG |
7636 | 2000-06-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
7637 | ||
7638 | * decl.c (create_primitive_vtable): Prototype. | |
7639 | ||
7640 | * jcf-write.c (generate_bytecode_insns): Initialize variable | |
7641 | `saved_context'. | |
7642 | ||
7643 | * lang.c (lang_get_alias_set): Mark parameter with ATTRIBUTE_UNUSED. | |
7644 | ||
ad69b5b6 BM |
7645 | 2000-06-09 Bryce McKinlay <bryce@albatross.co.nz> |
7646 | ||
7647 | * parse.y (find_applicable_accessible_methods_list): Use a hashtable | |
7648 | to track searched classes, and do not search the same class more than | |
7649 | once. Call find_applicable_accessible_methods_list on immediate | |
7650 | superclass, instead of search_applicable_method_list on all ancestors. | |
7651 | Fix for PR gcj/238. | |
7652 | ||
cf1748bf APB |
7653 | 2000-06-09 Bryce McKinlay <bryce@albatross.co.nz> |
7654 | ||
7655 | * parse.y (register_fields): Permit static fields in inner classes | |
7656 | if they are final. Fix for PR gcj/255. | |
7657 | ||
9a7ab4b3 APB |
7658 | 2000-06-06 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7659 | ||
7660 | * parse.h (REGISTER_IMPORT): Use `chainon' to link new entries. | |
7661 | * parse.y (find_in_imports): Returned type changed to void, | |
7662 | leading comment fixed. | |
7663 | (register_package): New function. | |
7664 | (qualify_and_find): Likewise. | |
7665 | (package_declaration:): Use `register_package'. | |
7666 | (single_type_import_declaration:): Removed local variable | |
7667 | `node'. Added missing `;' for consistency. | |
7668 | (type_import_on_demand_declaration:): Use `chainon' to link new | |
7669 | entries. | |
7670 | (lookup_field_wrapper): Lookup local variables defined in outer | |
7671 | contexts first. | |
7672 | (java_complete_class): Don't reverse the list of imported on demand. | |
7673 | (do_resolve_class): Reorganized. Removed local variable | |
7674 | `original_name'. Call `qualify_and_find' with the current package | |
7675 | name, invoke `find_in_imports_on_demand' right after. Call | |
7676 | `qualify_and_find' with the packages we've seen so far. Fixed | |
7677 | operations numbering in comments. | |
7678 | (java_expand_class): Don't reverse `package_list'. | |
7679 | (find_most_specific_methods_list): New local variables `abstract' | |
7680 | and `candidates'. Use them to pick the right method. | |
7681 | ||
62c9aa5f | 7682 | 2000-06-06 Tom Tromey <tromey@ferrule.cygnus.com> |
14d075d8 TT |
7683 | |
7684 | * parse.y (check_modifiers_consistency): Don't subtract out | |
7685 | `PUBLIC_TK' from argument to THIS_MODIFIER_ONLY. | |
7686 | ||
603832a0 PT |
7687 | 2000-06-04 Philipp Thomas <pthomas@suse.de> |
7688 | ||
7689 | * Makefile.in (INTLLIBS): New. | |
7690 | (LIBS): Add above. | |
7691 | (DEPLIBS): Ditto. | |
7692 | ||
62c9aa5f | 7693 | 2000-06-02 Alexandre Petit-Bianco <apbianco@cygnus.com> |
8f975c18 APB |
7694 | |
7695 | * class.c (get_dispatch_table): Build the vtable dummy entry list | |
e64c46ce | 7696 | element with a null purpose. Fixed leading comment. |
8f975c18 | 7697 | (build_dtable_decl): Build an accurate dtable type when appropriate |
e64c46ce | 7698 | and use it. |
8f975c18 | 7699 | |
2e761e49 RH |
7700 | 2000-06-02 Richard Henderson <rth@cygnus.com> |
7701 | ||
7702 | * lang.c (lang_get_alias_set): New. | |
7703 | ||
0f145be8 APB |
7704 | 2000-05-31 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7705 | ||
7706 | * parse.y (resolve_field_access): Complete the DECL_INITIAL tree | |
7707 | before using it as the accessed field. | |
7708 | ||
2771fe54 TT |
7709 | 2000-05-31 Tom Tromey <tromey@cygnus.com> |
7710 | ||
7711 | * java-tree.h (boolean_array_vtable, byte_array_vtable, | |
7712 | char_array_vtable, short_array_vtable, int_array_vtable, | |
7713 | long_array_vtable, float_array_vtable, double_array_vtable): | |
7714 | Declare. | |
7715 | * expr.c (get_primitive_array_vtable): New function. | |
7716 | (create_primitive_vtable): New function. | |
7717 | (java_lang_expand_expr): Enable code to statically generate | |
7718 | arrays. | |
7719 | * decl.c (init_decl_processing): Create primitive vtables. | |
7720 | (boolean_array_vtable, byte_array_vtable, char_array_vtable, | |
7721 | short_array_vtable, int_array_vtable, long_array_vtable, | |
7722 | float_array_vtable, double_array_vtable): Define. | |
7723 | ||
30a3caef ZW |
7724 | 2000-05-26 Zack Weinberg <zack@wolery.cumb.org> |
7725 | ||
7726 | * java/parse.y (find_applicable_accessible_methods_list): | |
7727 | Don't add an uninitialized value to the list. | |
7728 | ||
b8c5b1c6 TT |
7729 | 2000-05-25 Tom Tromey <tromey@cygnus.com> |
7730 | ||
40aaba2b TT |
7731 | * parse.y (resolve_field_access): Don't check DECL_LANG_SPECIFIC |
7732 | when trying to see if field's class should be initialized. Always | |
7733 | initialize field's declaring class, not qualified class. | |
7734 | For PR gcj/162. | |
7735 | ||
b8c5b1c6 TT |
7736 | * parse.y (array_constructor_check_entry): Pass `wfl_value', not |
7737 | `wfl_operator', to maybe_build_primttype_type_ref. | |
7738 | Fixes PR gcj/235. | |
7739 | ||
6518c7b5 BM |
7740 | 2000-05-23 Bryce McKinlay <bryce@albatross.co.nz> |
7741 | ||
7742 | * parse.y (patch_method_invocation): Don't try to lookup methods | |
7743 | in primitive types. | |
7744 | ||
611a4b87 APB |
7745 | 2000-05-02 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7746 | ||
7747 | * parse.y (resolve_field_access): Call the appropriate <clinit> | |
7748 | before accessing the length of a static array. Craft a decl for | |
7749 | the field while its time. Fixes PR gcj/129. | |
f6bbde28 | 7750 | |
6b48deee APB |
7751 | 2000-05-01 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7752 | ||
7753 | * parse.y (resolve_package): Correctly set `*next' (was off by | |
7754 | one.) | |
7755 | (resolve_qualified_expression_name): Fixed comment. | |
7756 | ||
62c9aa5f | 7757 | 2000-04-27 Alexandre Petit-Bianco <apbianco@cygnus.com> |
0ba154aa | 7758 | |
f6bbde28 | 7759 | * jcf-parse.c (jcf_parse_source): Reset current_class and |
e64c46ce | 7760 | current_function_decl to NULL before parsing a new file. |
0ba154aa | 7761 | |
62c9aa5f | 7762 | 2000-04-27 Alexandre Petit-Bianco <apbianco@cygnus.com> |
c280e37a APB |
7763 | |
7764 | * parse.y (block_end:): If the collected block doesn't feature a | |
e64c46ce | 7765 | statement, insert an empty statement. |
c280e37a | 7766 | |
92d83515 APB |
7767 | 2000-04-17 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7768 | ||
f6bbde28 ZW |
7769 | * parse.y (maybe_yank_clinit): New function. |
7770 | (maybe_generate_pre_expand_clinit): Always link <clinit> at the | |
7771 | end of the list of methods belonging to a class. | |
7772 | (java_complete_expand_method): Check whether <clinit> is really | |
7773 | necessary and expand it accordingly. | |
92d83515 | 7774 | |
ec5bb3cf APB |
7775 | 2000-04-17 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7776 | ||
7777 | * parse.y (fold_constant_for_init): Let VAR_DECL and FIELD_DECL be | |
7778 | processed by the method's switch statement. | |
7779 | ||
67db0ce7 TT |
7780 | 2000-05-19 Tom Tromey <tromey@cygnus.com> |
7781 | ||
7782 | * java-tree.h: Added init state enum. | |
7783 | * decl.c (emit_init_test_initialization): Initialize class | |
7784 | initialization check variable by looking at class' state. | |
7785 | ||
43490bec TT |
7786 | 2000-05-19 Tom Tromey <tromey@cygnus.com> |
7787 | ||
7788 | * java-tree.h (build_instanceof): Declare. | |
7789 | (build_get_class): Declare. | |
7790 | * parse.y (patch_binop): Use build_instanceof. | |
7791 | * expr.c (build_instanceof): New function. If class is final, | |
7792 | don't make a function call. | |
7793 | (expand_java_INSTANCEOF): Use it. | |
7794 | (build_get_class): New function. | |
7795 | ||
062edaed AO |
7796 | 2000-05-18 Alexandre Oliva <oliva@lsd.ic.unicamp.br> |
7797 | ||
7798 | * jcf-write.c (generate_classfile): Scan the source_file for | |
7799 | slashes with the right pointer variable. | |
7800 | ||
62c9aa5f | 7801 | 2000-05-17 Andrew Cagney <cagney@b1.cygnus.com> |
078721e1 AC |
7802 | |
7803 | * lang.c (lang_decode_option): Update -Wunused flags by calling | |
e64c46ce | 7804 | set_Wunused. |
078721e1 AC |
7805 | * decl.c (poplevel): Replace warn_unused with warn_unused_label. |
7806 | ||
46543024 | 7807 | 2000-05-09 Zack Weinberg <zack@wolery.cumb.org> |
3b304f5b ZW |
7808 | |
7809 | * check_init.c (check_init): Constify local char *. | |
7810 | * class.c (push_class): Constify local char *. | |
7811 | * java_tree.h: Update prototypes. | |
7812 | * jcf-io.c (open_class): Constify filename parameter and | |
7813 | return value. | |
7814 | (find_class): Remove redundant string copy. Cast return from | |
7815 | open_class. | |
7816 | * jcf-parse.c (read_class, parse_class_file, yyparse): | |
7817 | Constify local char *. | |
7818 | * jcf-write.c (generate_bytecode_insns, generate_classfile): | |
7819 | Constify local char *. | |
7820 | * jcf.h (JCF): Constify filename and classname. | |
7821 | (JCF_FINISH): Cast args to FREE to char * when appropriate. | |
7822 | * lang.c (init_parse): Constify parameter and return value. | |
7823 | * lex.c (java_get_line_col): Constify filename parameter. | |
7824 | * parse.h: Constify parser_ctxt.filename. Update prototypes. | |
7825 | * parse.y (java_parser_context_suspend, | |
7826 | issue_warning_error_from_context, safe_layout_class): Constify | |
7827 | local char *. | |
7828 | * parse.c: Regenerate. | |
7829 | ||
4c6a8973 TT |
7830 | 2000-05-08 Tom Tromey <tromey@cygnus.com> |
7831 | ||
7832 | * expr.c (build_jni_stub): Cache the result of | |
7833 | _Jv_LookupJNIMethod. | |
7834 | ||
e117276e APB |
7835 | 2000-05-05 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7836 | ||
7837 | * decl.c (predef_filenames_size): Now 7. | |
7838 | (predef_filenames): New seventh entry. | |
7839 | ||
652f2504 TT |
7840 | 2000-05-04 Tom Tromey <tromey@cygnus.com> |
7841 | ||
7842 | * boehm.c (mark_reference_fields): Don't mark RawData fields. | |
7843 | Keep track of when we've seen a reference field after a | |
7844 | non-reference field. | |
7845 | (get_boehm_type_descriptor): Handle case where we see | |
7846 | non-reference fields but no trailing reference field. | |
7847 | * decl.c (rawdata_ptr_type_node): Define. | |
7848 | (init_decl_processing): Initialize rawdata_ptr_type_node. | |
7849 | * java-tree.h (rawdata_ptr_type_node): Declare. | |
7850 | ||
ccedaff3 KG |
7851 | 2000-05-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
7852 | ||
7853 | * jcf-dump.c (SPECIAL_IINC): Ensure arguments match format | |
7854 | specifiers in calls to fprintf. | |
7855 | ||
dd5d6281 TT |
7856 | 2000-05-03 Andrew Haley <aph@cygnus.com> |
7857 | ||
7858 | * expr.c (build_java_jsr): Use emit_jump, not expand_goto. | |
7859 | ||
7860 | * javaop.h (WORD_TO_INT): New function. | |
7861 | (IMMEDIATE_s4): Use WORD_TO_INT. | |
7862 | * jcf.h (JPOOL_INT): Ditto. | |
7863 | ||
7864 | * gjavah.c (decode_signature_piece): Don't treat `$' as namespace | |
7865 | separator. | |
7866 | ||
dd5d6281 | 7867 | 2000-04-19 Tom Tromey <tromey@cygnus.com> |
7145d9fe TT |
7868 | |
7869 | * class.c (add_method_1): Set both DECL_EXTERNAL and METHOD_NATIVE | |
7870 | on native function. | |
7871 | * jcf-parse.c (parse_class_file): Call build_jni_stub for native | |
7872 | JNI methods. | |
7873 | * expr.c (build_jni_stub): New function. | |
7874 | * lang-specs.h: -fjni and -femit-class-file are incompatible. | |
7875 | * parse.c: Rebuilt. | |
7876 | * parse.y (java_complete_expand_methods): Expand a native method | |
7877 | and call build_jni_stub if -fjni given. | |
7878 | * lang-options.h: Document -fjni. | |
7879 | * lang.c (flag_jni): New global. | |
7880 | (lang_f_options): Added `jni' entry. | |
7881 | * java-tree.h (soft_lookupjnimethod_node, | |
7882 | soft_getjnienvnewframe_node, soft_jnipopsystemframe_node): | |
7883 | Declare. | |
7884 | (flag_jni): Declare. | |
7885 | (build_jni_stub): Declare. | |
7886 | (struct lang_decl): Added `native' flag. | |
7887 | (METHOD_NATIVE): Redefined to use `native' field of lang specific | |
7888 | structure. | |
7889 | * decl.c (soft_lookupjnimethod_node, soft_getjnienvnewframe_node, | |
7890 | soft_jnipopsystemframe_node): New globals. | |
7891 | (init_decl_processing): Set them. _Jv_InitClass only takes one | |
7892 | argument. | |
7893 | ||
7894 | * java-tree.def: Put into `C' mode. | |
7895 | ||
e815887f TT |
7896 | 2000-04-27 Tom Tromey <tromey@cygnus.com> |
7897 | ||
7898 | Fix for PR gcj/2: | |
7899 | * expr.c (expand_invoke): Generate check to see if object pointer | |
7900 | is null in nonvirtual invocation case. | |
7901 | * java-tree.h (soft_nullpointer_node): Declare. | |
7902 | * decl.c (soft_nullpointer_node): New global. | |
7903 | (init_decl_processing): Initialize soft_nullpointer_node. | |
7904 | * parse.y (invocation_mode): Return INVOKE_NONVIRTUAL for `final' | |
7905 | or `private' methods. | |
7906 | (patch_invoke): Handle INVOKE_NONVIRTUAL case. | |
7907 | ||
62c9aa5f | 7908 | 2000-04-26 Alexandre Petit-Bianco <apbianco@cygnus.com> |
ad81223c APB |
7909 | |
7910 | * decl.c (complete_start_java_method): Don't call _Jv_InitClass | |
e64c46ce | 7911 | from <clinit> |
ad81223c | 7912 | |
f1acc01e TT |
7913 | 2000-04-26 Tom Tromey <tromey@cygnus.com> |
7914 | ||
7915 | * zextract.c (find_zip_file_start): New function. | |
7916 | (read_zip_archive): Use it. | |
7917 | ||
e803d3b2 APB |
7918 | 2000-04-25 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7919 | ||
7920 | * parse.y (register_incomplete_type): Handle JDEP_ANONYMOUS. | |
7921 | ||
152de068 APB |
7922 | 2000-04-24 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7923 | ||
7924 | * class.c (common_enclosing_context_p): New function. | |
7925 | * java-tree.h (common_enclosing_context_p): Added prototype. | |
7926 | * parse.h (INNER_ENCLOSING_SCOPE_CHECK): Relaxed test to allow | |
7927 | classes sharing an outer context with the current instance. | |
7928 | * parse.y (build_access_to_thisn): Fixed leading comment. | |
7929 | (verify_constructor_super): New local `supper_inner'. Skip | |
7930 | enclosing context argument in the case of inner class constructors. | |
7931 | (patch_method_invocation): Insert proper context as second | |
7932 | parameter to pure inner class constructor super invocations. | |
7933 | ||
62c9aa5f | 7934 | 2000-04-24 Alexandre Petit-Bianco <apbianco@cygnus.com> |
93220702 APB |
7935 | |
7936 | * parse.y (end_class_declaration): Reset the interface number | |
e64c46ce | 7937 | counter. |
93220702 | 7938 | |
dfb99c83 APB |
7939 | 2000-04-24 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7940 | ||
17126208 | 7941 | * parse.y (source_start_java_method): Deleted unnecessary code. |
f6bbde28 | 7942 | (patch_method_invocation): Fixed comment. |
dfb99c83 | 7943 | |
e60a8c26 RL |
7944 | 2000-04-24 Robert Lipe <robertlipe@usa.net> |
7945 | ||
7946 | * parse.h (_jdep): Member `kind' now ENUM_BITFIELD. | |
7947 | ||
3c8c10b8 TT |
7948 | 2000-04-23 Tom Tromey <tromey@cygnus.com> |
7949 | ||
7950 | * boehm.c (mark_reference_fields): Use int_byte_position. | |
7951 | ||
8a008c41 TT |
7952 | 2000-04-22 Tom Tromey <tromey@cygnus.com> |
7953 | ||
7954 | * boehm.c (mark_reference_fields): Only call byte_position on | |
7955 | non-static fields. | |
7956 | ||
d5f76aba TT |
7957 | 2000-04-22 Tom Tromey <tromey@cygnus.com> |
7958 | ||
7959 | * boehm.c (mark_reference_fields): Added `last_view_index' | |
7960 | argument. Use DECL_FIELD_OFFSET to determine field's offset. | |
7961 | ||
62c9aa5f | 7962 | 2000-04-20 Mo DeJong <mdejong@cygnus.com> |
a40d21da APB |
7963 | |
7964 | * parse.h (INTERFACE_INNER_MODIFIERS): New macro. | |
7965 | * parse.y (check_class_interface_creation): Fixed comments. Select | |
e64c46ce AJ |
7966 | permitted modifiers for (inner) interfaces. Changed error message |
7967 | to report rejected modifiers used with local classes. | |
a40d21da APB |
7968 | |
7969 | 2000-04-20 Alexandre Petit-Bianco <apbianco@cygnus.com> | |
7970 | ||
7971 | * parse.h (INNER_ENCLOSING_SCOPE_CHECK): Immediate inner classes | |
7972 | of directly inherited type considered in scope. | |
7973 | * parse.y (do_resolve_class): Search inherited classes for inner | |
7974 | classes. | |
7975 | ||
473e7b07 TT |
7976 | 2000-04-20 Tom Tromey <tromey@cygnus.com> |
7977 | ||
7978 | * parse.y (not_accessible_p): Use member's class, not current | |
7979 | class, when doing inheritance check for protected reference. | |
7980 | Fixes PR gcj/124. | |
7981 | ||
62c9aa5f | 7982 | 2000-04-20 Jason Schroeder <shrode@subnature.com> |
c52fbf0f JS |
7983 | |
7984 | * jcf-dump.c (SPECIAL_IINC): Fixed typo printing iinc instruction. | |
7985 | ||
f2760b27 APB |
7986 | 2000-04-19 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7987 | ||
7988 | * parse.y (lookup_field_wrapper): Search for final local aliases. | |
7989 | (resolve_expression_name): Let lookup_field_wrapper search for | |
7990 | final local aliases. Force the value of `name' if one is found. | |
7991 | (qualify_ambiguous_name): CONVERT_EXPR is enough to now we have | |
7992 | an expression name. Fixed comments. | |
7993 | ||
807bc1db APB |
7994 | 2000-04-19 Alexandre Petit-Bianco <apbianco@cygnus.com> |
7995 | ||
7996 | * parse.y (yyerror): `msg' can be null, don't use it in that case. | |
7997 | ||
ecb36604 TT |
7998 | 2000-04-19 Tom Tromey <tromey@cygnus.com> |
7999 | ||
8000 | * gjavah.c (cxx_keyword_subst): Avoid potential infinite loop. | |
8001 | ||
48a840d9 APB |
8002 | 2000-04-18 Alexandre Petit-Bianco <apbianco@cygnus.com> |
8003 | ||
8004 | * parse.y (maybe_make_nested_class_name): Use `obstack_grow0'. | |
8005 | ||
83c1f628 TT |
8006 | 2000-04-18 Tom Tromey <tromey@cygnus.com> |
8007 | ||
8008 | PR gcj/211: | |
8009 | * gjavah.c (utf8_cmp): Changed return value. | |
8010 | (cxx_keyword_subst): Handle all C++ keywords. Allocate new return | |
8011 | result. | |
8012 | (cxx_keywords): New global. | |
8013 | (get_field_name): Handle new result of cxx_keyword_subst. | |
8014 | (print_method_info): Likewise. | |
8015 | ||
a7384840 BM |
8016 | 2000-04-17 Bryce McKinlay <bryce@albatross.co.nz> |
8017 | ||
f6bbde28 | 8018 | * gjavah.c (print_name_for_stub_or_jni): Don't prefix method names |
a7384840 | 8019 | with a newline, for CNI. |
f6bbde28 | 8020 | (print_stub_or_jni): Print a space or newline before method name for |
a7384840 BM |
8021 | CNI as well as JNI. |
8022 | (print_cxx_classname): Don't write leading "::" in CNI stub method. | |
f6bbde28 | 8023 | (process_file): Include gcj/cni.h if generating CNI stubs. |
a7384840 | 8024 | |
3e0768f0 TT |
8025 | 2000-04-16 Tom Tromey <tromey@cygnus.com> |
8026 | ||
8027 | * gjavah.c (decompile_method): Use print_field_name. | |
8028 | Fixes PR gcj/205. | |
8029 | ||
48a840d9 APB |
8030 | 2000-04-14 Alexandre Petit-Bianco <apbianco@cygnus.com> |
8031 | ||
8032 | * parse.y (java_expand_classes): Reverse the package list once. | |
8033 | (java_complete_lhs): PLUS_EXPR: don't try rhs and lhs at string | |
8034 | reduction. | |
8035 | (patch_binop): New temp `cn'. Call patch_string on LHS/RHS of | |
8036 | the `==' and `!=' operators. | |
8037 | ||
cedea510 APB |
8038 | 2000-04-05 Alexandre Petit-Bianco <apbianco@cygnus.com> |
8039 | ||
67264b4f | 8040 | * jcf-write.c (generate_bytecode_insns): At invocation time, |
cedea510 | 8041 | always relate an interface method to the type of its selector. |
f6bbde28 | 8042 | |
e803d3b2 APB |
8043 | 2000-04-05 Tom Tromey <tromey@cygnus.com> |
8044 | ||
8045 | Fix for PR gcj/2: | |
8046 | * expr.c (expand_invoke): Generate check to see if object pointer | |
8047 | is null in nonvirtual invocation case. | |
8048 | * java-tree.h (soft_nullpointer_node): Declare. | |
8049 | * decl.c (soft_nullpointer_node): New global. | |
8050 | (init_decl_processing): Initialize soft_nullpointer_node. | |
8051 | * parse.y (invocation_mode): Return INVOKE_NONVIRTUAL for `final' | |
8052 | or `private' methods. | |
8053 | (patch_invoke): Handle INVOKE_NONVIRTUAL case. | |
8054 | ||
bc2874c9 TT |
8055 | 2000-04-05 Tom Tromey <tromey@cygnus.com> |
8056 | ||
8057 | Fix for PR gcj/140: | |
8058 | * parse.y (check_final_assignment): Recognize assignments to the | |
8059 | `length' field of an array when generating class files. | |
8060 | ||
256172c4 APB |
8061 | 2000-04-05 Alexandre Petit-Bianco <apbianco@cygnus.com> |
8062 | ||
8063 | * class.c (decl_hash): Prototype removed. | |
8064 | (decl_compare): Likewise. | |
8065 | ||
e0fc4118 TT |
8066 | 2000-04-05 Tom Tromey <tromey@cygnus.com> |
8067 | ||
8068 | * parse.h (THIS_MODIFIER_ONLY): Changed meaning of `v' parameter. | |
8069 | * parse.y (check_modifiers_consistency): Check for final/volatile | |
8070 | clash. Fixes PR gcj/164. | |
8071 | ||
e0422ed0 APB |
8072 | 2000-04-05 Alexandre Petit-Bianco <apbianco@cygnus.com> |
8073 | ||
8074 | * class.c: (java_hash_hash_tree_node): Renamed from `decl_hash', | |
8075 | made global. | |
8076 | (java_hash_compare_tree_node): Renamed from `decl_compare, made | |
8077 | global. | |
8078 | (add_method_1): Use `java_hash_hash_tree_node' and | |
8079 | `java_hash_compare_tree_node'. | |
8080 | * java-tree.h: (java_hash_hash_tree_node): Prototyped. | |
8081 | (java_hash_compare_tree_node): Likewise. | |
8082 | * parse.y (find_applicable_accessible_methods_list): Create, | |
8083 | delete and use a hash table to remember already searched interfaces. | |
8084 | ||
4200941b MW |
8085 | 2000-04-03 Matt Welsh <mdw@cs.berkeley.edu> |
8086 | ||
8087 | * jcf-depend.c (add_entry): Fixed bug where list was always replaced | |
8088 | with latest entry. | |
8089 | ||
c0b864fc KG |
8090 | 2000-04-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
8091 | ||
8092 | * boehm.c (mark_reference_fields, set_bit): Prototype. | |
8093 | (set_bit): Un-ANSI-fy definition. | |
8094 | ||
8095 | * class.c (init_test_hash_newfunc, decl_hash, decl_compare): | |
8096 | Prototype. | |
8097 | ||
8098 | * decl.c (emit_init_test_initialization): Likewise. | |
8099 | ||
8100 | * gjavah.c (jni_print_char): Likewise. | |
8101 | ||
8102 | * parse.y (create_new_parser_context): Likewise. | |
8103 | ||
62c9aa5f | 8104 | 2000-03-30 Alexandre Petit-Bianco <apbianco@cygnus.com> |
64ea4a5e APB |
8105 | |
8106 | * expr.c (java_lang_expand_expr): Added Anthony's Thu Jan 6 2000 | |
8107 | patch missing hunk. Fixed indentation. | |
8108 | ||
05411ecf TT |
8109 | 2000-03-30 Tom Tromey <tromey@cygnus.com> |
8110 | ||
8111 | * gjavah.c (D_NAN_MASK): Only define as word-reversed when | |
8112 | HOST_FLOAT_WORDS_BIG_ENDIAN and HOST_WORDS_BIG_ENDIAN disagree. | |
8113 | ||
acbedd7c APB |
8114 | 2000-03-28 Alexandre Petit-Bianco <apbianco@cygnus.com> |
8115 | ||
8116 | * parse-scan.y (pop_class_context): Reset `inner_qualifier_length' | |
8117 | when negative *before* using it as an array index. | |
8118 | * ChangeLog: Fixed typo. | |
8119 | ||
0981a859 APB |
8120 | 2000-03-28 Alexandre Petit-Bianco <apbianco@cygnus.com> |
8121 | ||
8122 | * parse-scan.y (pop_class_context): Reset `inner_qualifier_length' | |
8123 | to 0 when it reaches -1. | |
8124 | ||
8125 | 2000-03-27 Alexandre Petit-Bianco <apbianco@cygnus.com> | |
8126 | ||
8127 | * jcf-parse.c (get_constant): Properly cast `num' during the | |
acbedd7c | 8128 | invocation of `add_double'. |
0981a859 APB |
8129 | * jcf-write.c (push_long_const): Properly cast `lo' before |
8130 | comparing it to short bounds. | |
8131 | * parse-scan.y (interface_declaration:): Rule re-arrange so that | |
8132 | `interface_body:' is reduced after the current interface is | |
8133 | pushed. | |
8134 | ||
a843e0ce TT |
8135 | 2000-03-26 Tom Tromey <tromey@cygnus.com> |
8136 | ||
8137 | * jvspec.c (jvgenmain_spec): Add `%{<...}' construct for each | |
8138 | Java-specific `-f' option. | |
8139 | ||
62c9aa5f | 8140 | 2000-03-26 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
ad41cc2a RK |
8141 | |
8142 | * decl.c (init_decl_processing): Only call initialize_sizetypes once. | |
8143 | Adjust order of making types. | |
8144 | Make bitsize_*_node values. | |
8145 | ||
62c9aa5f | 8146 | 2000-03-25 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
770ae6cc RK |
8147 | |
8148 | * class.c (make_field_value): Use byte_position. | |
8149 | * expr.c (JAVA_ARRAY_LENGTH_OFFSET): Use byte_position. | |
8150 | (java_array_data_offset): Likewise. | |
8151 | * java-tree.h (MAYBE_CREATE_TYPE_TYPE_LANG_SPECIFIC): Add case to | |
8152 | bzero call. | |
8153 | ||
165f37bc APB |
8154 | 2000-03-22 Alexandre Petit-Bianco <apbianco@cygnus.com> |
8155 | ||
8156 | * parse.y (check_abstract_method_definitions): New local | |
8157 | `end_type_reached'. Make sure we also consider `end_type'. | |
0981a859 APB |
8158 | (java_check_abstract_method_definitions): Make sure we eventually |
8159 | consider `java.lang.Object'. | |
8160 | (maybe_use_access_method): Don't use access method if not in the | |
8161 | context of a pure inner class or if the method's context is right. | |
8162 | (find_applicable_accessible_methods_list): New static flag | |
165f37bc | 8163 | `object_done'. Don't search abstract classes as interfaces. Fixed |
0981a859 APB |
8164 | indentation. Fixed the `java.lang.Object' only search. Search |
8165 | class interface(s) first, then fully search enclosing contexts. | |
8166 | (find_most_specific_methods_list): Pick the closest candidate when | |
165f37bc APB |
8167 | they're all abstract. |
8168 | ||
62c9aa5f | 8169 | 2000-03-20 Alexandre Petit-Bianco <apbianco@cygnus.com> |
124906f9 APB |
8170 | |
8171 | * jcf-write.c (generate_bytecode_insns): TRY_FINALLY_EXPR: | |
dba41d30 | 8172 | properly initialize `finished_label'. Don't emit gotos for empty |
124906f9 APB |
8173 | try statements. |
8174 | ||
809e3e7f | 8175 |