diff options
author | Alexandre Petit-Bianco <apbianco@cygnus.com> | 2001-02-14 00:03:11 +0000 |
---|---|---|
committer | Alexandre Petit-Bianco <apbianco@gcc.gnu.org> | 2001-02-13 16:03:11 -0800 |
commit | 94807d3318a6a63a3a0efe3419e6a402e77087bb (patch) | |
tree | 2409121bec47bf9d0bb428da3a62dc4db716f8f8 /gcc/java/parse.y | |
parent | 7093c9eac47ff7bfb670e7dec280d30b545a30c2 (diff) | |
download | gcc-94807d3318a6a63a3a0efe3419e6a402e77087bb.zip gcc-94807d3318a6a63a3a0efe3419e6a402e77087bb.tar.gz gcc-94807d3318a6a63a3a0efe3419e6a402e77087bb.tar.bz2 |
decl.c (classdollar_identifier_node): Initialize.
2001-02-13 Alexandre Petit-Bianco <apbianco@cygnus.com>
* decl.c (classdollar_identifier_node): Initialize.
* java-tree.h (enum java_tree_index): New entry
`JTI_CLASSDOLLAR_IDENTIFIER_NODE.'
(classdollar_identifier_node): New macro.
(ID_CLASSDOLLAR_P): Likewise.
* parse.y (build_dot_class_method): Use `classdollar_identifier_node.'
(build_dot_class_method_invocation): Likewise.
(find_applicable_accessible_methods_list): `class$' can't be
inherited.
(http://gcc.gnu.org/ml/gcc-patches/2001-02/msg00760.html)
From-SVN: r39650
Diffstat (limited to 'gcc/java/parse.y')
-rw-r--r-- | gcc/java/parse.y | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/gcc/java/parse.y b/gcc/java/parse.y index 6ffa335..a2d4189 100644 --- a/gcc/java/parse.y +++ b/gcc/java/parse.y @@ -8327,7 +8327,7 @@ build_dot_class_method (class) /* Create the "class$" function */ mdecl = create_artificial_method (class, ACC_STATIC, build_pointer_type (class_type_node), - get_identifier ("class$"), args); + classdollar_identifier_node, args); DECL_FUNCTION_THROWS (mdecl) = build_tree_list (NULL_TREE, no_class_def_found_error); @@ -8401,7 +8401,7 @@ build_dot_class_method_invocation (type) s = build_string (IDENTIFIER_LENGTH (sig_id), IDENTIFIER_POINTER (sig_id)); - return build_method_invocation (build_wfl_node (get_identifier ("class$")), + return build_method_invocation (build_wfl_node (classdollar_identifier_node), build_tree_list (NULL_TREE, s)); } @@ -10427,10 +10427,10 @@ find_applicable_accessible_methods_list (lc, class, name, arglist) search_applicable_methods_list (lc, TYPE_METHODS (class), name, arglist, &list, &all_list); - /* When looking finit$, we turn LC to 1 so that we only search - in class. Note that we should have found something at - this point. */ - if (ID_FINIT_P (name)) + /* When looking finit$ or class$, we turn LC to 1 so that we + only search in class. Note that we should have found + something at this point. */ + if (ID_FINIT_P (name) || ID_CLASSDOLLAR_P (name)) { lc = 1; if (!list) |