diff options
author | Alexandre Petit-Bianco <apbianco@cygnus.com> | 1998-12-09 15:50:12 +0000 |
---|---|---|
committer | Alexandre Petit-Bianco <apbianco@gcc.gnu.org> | 1998-12-09 07:50:12 -0800 |
commit | f8976021c4079ce1461fffb45622437ec13ff597 (patch) | |
tree | 136a2facf7b183653374d398723981a6e03e7777 /gcc/java/parse.h | |
parent | 996d0685a14687f870f96f29fc95e1ba8f71900c (diff) | |
download | gcc-f8976021c4079ce1461fffb45622437ec13ff597.zip gcc-f8976021c4079ce1461fffb45622437ec13ff597.tar.gz gcc-f8976021c4079ce1461fffb45622437ec13ff597.tar.bz2 |
java-tree.def (NEW_ARRAY_INIT): New Java tree code.
Wed Dec 9 15:37:05 1998 Alexandre Petit-Bianco <apbianco@cygnus.com>
* java-tree.def (NEW_ARRAY_INIT): New Java tree code.
* lex.c (java_lex): Remember column position before advancing one
token. Retain location information on OCB_TK.
* lex.h (typedef struct java_lc): Added new field.
* parse.h (GET_SKIP_TYPE): New macro.
(QUAL_DECL_TYPE): Redefined using GET_SKIP_TYPE.
* parse.y (build_new_array_init, patch_new_array_init,
patch_array_constructor, maybe_build_array_element_wfl,
array_constructor_check_entry): New function prototypes.
(switch_block:): Tagged <node>.
(OCB_TK): Tagged <operator>.
(array_initializer:): Installed actions.
(variable_initializer): Build location information on element if
necessary.
(switch_statement:): Fixed indentation typo.
(switch_block:): Redefined default action.
(java_complete_tree): Handle NEW_ARRAY_INIT in MODIFY_EXPR:.
(patch_assignment): Removed duplicate code.
(maybe_build_array_element_wfl, build_new_array_init,
patch_new_array_init, patch_array_constructor,
array_constructor_check_entry): New functions.
Parse and walk array initializer nodes.
From-SVN: r24224
Diffstat (limited to 'gcc/java/parse.h')
-rw-r--r-- | gcc/java/parse.h | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/gcc/java/parse.h b/gcc/java/parse.h index 79c6c78b..0f3c3b6 100644 --- a/gcc/java/parse.h +++ b/gcc/java/parse.h @@ -482,9 +482,11 @@ static jdeplist *reverse_jdep_list (); #define EXPR_WFL_QUALIFICATION(WFL) TREE_OPERAND ((WFL), 1) #define QUAL_WFL(NODE) TREE_PURPOSE (NODE) #define QUAL_RESOLUTION(NODE) TREE_VALUE (NODE) -#define QUAL_DECL_TYPE(NODE) \ +#define QUAL_DECL_TYPE(NODE) GET_SKIP_TYPE (NODE) + +#define GET_SKIP_TYPE(NODE) \ (TREE_CODE (TREE_TYPE (NODE)) == POINTER_TYPE ? \ - TREE_TYPE (TREE_TYPE (NODE)) : TREE_TYPE (NODE)) + TREE_TYPE (TREE_TYPE (NODE)): TREE_TYPE (NODE)) /* Handy macros for the walk operation */ #define COMPLETE_CHECK_OP(NODE, N) \ |