mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-03-08 08:06:47 +08:00
expr.c (expand_invoke): Layout the loaded class before attempting to use it.
Thu Dec 16 00:09:45 1999 Alexandre Petit-Bianco <apbianco@cygnus.com> * expr.c (expand_invoke): Layout the loaded class before attempting to use it. (expand_java_field_op): Allow final field assignments to take place in $finit$. * typeck.c (convert): Return error_mark_node if expr is null. From-SVN: r31147
This commit is contained in:
parent
781b0558cf
commit
6bafd8b6e9
@ -22,6 +22,20 @@
|
||||
patch_throw_statement, check_thrown_exceptions,
|
||||
patch_conditional_expr): Likewise.
|
||||
|
||||
1999-12-17 Tom Tromey <tromey@cygnus.com>
|
||||
|
||||
* gjavah.c (decode_signature_piece): Print "::" in JArray<>. This
|
||||
fixes PR gcj/119.
|
||||
(process_file): Use `\n\' at end of each line in string.
|
||||
|
||||
Thu Dec 16 00:09:45 1999 Alexandre Petit-Bianco <apbianco@cygnus.com>
|
||||
|
||||
* expr.c (expand_invoke): Layout the loaded class before
|
||||
attempting to use it.
|
||||
(expand_java_field_op): Allow final field assignments to take
|
||||
place in $finit$.
|
||||
* typeck.c (convert): Return error_mark_node if expr is null.
|
||||
|
||||
1999-12-14 Alexandre Petit-Bianco <apbianco@cygnus.com>
|
||||
|
||||
* class.c (class_depth): Return -1 if the class doesn't load
|
||||
@ -47,12 +61,6 @@
|
||||
* typeck.c (lookup_java_method): Take WFLs in method names into
|
||||
account.
|
||||
|
||||
1999-12-17 Tom Tromey <tromey@cygnus.com>
|
||||
|
||||
* gjavah.c (decode_signature_piece): Print "::" in JArray<>. This
|
||||
fixes PR gcj/119.
|
||||
(process_file): Use `\n\' at end of each line in string.
|
||||
|
||||
Tue Dec 14 14:20:16 1999 Per Bothner <per@bothner.com>
|
||||
|
||||
* class.c (make_class_data): flag_keep_inline_functions to keep
|
||||
|
@ -1645,6 +1645,7 @@ expand_invoke (opcode, method_ref_index, nargs)
|
||||
if (! CLASS_LOADED_P (self_type))
|
||||
{
|
||||
load_class (self_type, 1);
|
||||
safe_layout_class (self_type);
|
||||
if (TREE_CODE (TYPE_SIZE (self_type)) == ERROR_MARK)
|
||||
fatal ("failed to find class '%s'", self_name);
|
||||
}
|
||||
@ -1816,7 +1817,9 @@ expand_java_field_op (is_static, is_putting, field_ref_index)
|
||||
}
|
||||
else
|
||||
{
|
||||
if (! DECL_CONSTRUCTOR_P (current_function_decl))
|
||||
tree cfndecl_name = DECL_NAME (current_function_decl);
|
||||
if (! DECL_CONSTRUCTOR_P (current_function_decl)
|
||||
&& (cfndecl_name != finit_identifier_node))
|
||||
error_with_decl (field_decl, "assignment to final field `%s' "
|
||||
"not in constructor");
|
||||
}
|
||||
|
@ -110,6 +110,9 @@ convert (type, expr)
|
||||
{
|
||||
register enum tree_code code = TREE_CODE (type);
|
||||
|
||||
if (!expr)
|
||||
return error_mark_node;
|
||||
|
||||
if (do_not_fold)
|
||||
return build1 (NOP_EXPR, type, expr);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user