parse.y (fold_constant_for_init): New function.
authorPer Bothner <bothner@gcc.gnu.org>
Mon, 14 Dec 1998 19:22:30 +0000 (11:22 -0800)
committerPer Bothner <bothner@gcc.gnu.org>
Mon, 14 Dec 1998 19:22:30 +0000 (11:22 -0800)
commit659ad4501bc077090ef58d7b8434faaa8e2e7fcb
treed991649ba93a9408ad3341cf5ddd4bb0ee29bbfa
parent5b09b33e5f35eb738a54b9e46f3709bbcc7bdc22
parse.y (fold_constant_for_init): New function.

* parse.y (fold_constant_for_init):  New function.
(resolve_expression_name):  Don't replace static final
  constant-initialized fields by its value.
(java_complete_lhs):  New.  Same as java_complete_tree, except does
not replace static final constant-initialized fields by their values.
(register_fields):  If there is an initializer, set DECL_INITIAL and
MODIFY_EXPR_FROM_INITIALIZATION_P.
(java_complete_tree):  For MODIFY_EXPR, use java_complete_lhs for lhs.
Only call patch_initialized_static_field if
MODIFY_EXPR_FROM_INITIALIZATION_P.
(patch_initialized_static_field):  If not valid constant, clear
DECL_INITIAL.
* parse.y (lookup_field_wrapper):  Fix thinko.
* parse.y (java_complete_tree):  In EXPR_WITH_FILE_LOCATION,
set and restore global lineno.

From-SVN: r24317
gcc/java/ChangeLog