From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 30306 invoked by alias); 5 Oct 2005 19:35:54 -0000 Mailing-List: contact java-prs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: java-prs-owner@gcc.gnu.org Received: (qmail 30247 invoked by alias); 5 Oct 2005 19:35:52 -0000 Date: Wed, 05 Oct 2005 19:35:00 -0000 Message-ID: <20051005193552.30244.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug java/20338] Program compiled with gcj crashes when accessing private static method from nested class In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: java-prs@gcc.gnu.org From: "cvs-commit at gcc dot gnu dot org" X-SW-Source: 2005-q4/txt/msg00040.txt.bz2 List-Id: ------- Comment #9 from cvs-commit at gcc dot gnu dot org 2005-10-05 19:35 ------- Subject: Bug 20338 CVSROOT: /cvs/gcc Module name: gcc Branch: gcc-4_0-branch Changes by: bryce@gcc.gnu.org 2005-10-05 19:35:46 Modified files: gcc/java : ChangeLog decl.c java-tree.h jcf-write.c parse.y libjava : ChangeLog libjava/testsuite/libjava.jacks: jacks.xfail Added files: libjava/testsuite/libjava.lang: PR19870.java PR19870.out PR19870_2.java PR19870_2.out Log message: gcc/java: 2005-10-05 Ranjit Mathew PR java/20338 * decl.c (finish_method): Emit _Jv_InitClass for private static methods inside inner classes as well. 2005-10-05 Ranjit Mathew PR java/19870 * parse.y (nested_field_access_p): Rename to nested_member_access_p and expand to handle method accesses across nested classes. (build_outer_method_access_method): Rename to build_nested_method_access_method. Minor adjustments to comments. (resolve_expression_name): Use the newly-renamed nested_member_access_p method. (resolve_qualified_expression_name): Likewise. (patch_method_invocation): Also consider static methods for access method generation. Minor adjustments to comments. (maybe_use_access_method): Use the more general nested_memeber_access_p to determine access across nested class boundaries. Allow THIS_ARG to be NULL (for static methods). 2005-10-05 Tom Tromey PR java/21844: * parse.y (nested_field_access_p): Handle case where outer field is inherited by enclosing class. 2005-10-05 Ranjit Mathew PR java/19870. * java-tree.h (OUTER_FIELD_ACCESS_IDENTIFIER_P): Rename to NESTED_FIELD_ACCESS_IDENTIFIER_P. (FIELD_INNER_ACCESS): Rename to FIELD_NESTED_ACCESS. (FIELD_INNER_ACCESS_P): Rename to FIELD_NESTED_ACCESS_P. * jcf-write.c (generate_classfile): Use NESTED_FIELD_ACCESS_IDENTIFIER_P instead of OUTER_FIELD_ACCESS_IDENTIFIER_P. * parse.y (build_outer_field_access): Rename to build_nested_field_access. Support static fields and outer-to-inner class accesses. (outer_field_access_p): Rename to nested_field_access_p. Support static fields and generalise to outer-to-inner class and sibling inner class accesses. (outer_field_expanded_access_p): Rename to nested_field_expanded_access_p and support static fields. (outer_field_access_fix): Rename to nested_field_access_fix and support static fields. (build_outer_field_access_expr): Rename to build_nested_field_access_expr and support static fields. (build_outer_field_access_methods): Rename to build_nested_field_access_methods and support static fields. For static fields, generate accessors without class instance parameters. (build_outer_field_access_method): Rename to build_nested_field_access_method and support static fields. (build_outer_method_access_method): Use NESTED_FIELD_ACCESS_IDENTIFIER_P instead of OUTER_FIELD_ACCESS_IDENTIFIER_P. (resolve_expression_name): Consider static field accesses across nested classes. (resolve_qualified_expression_name): Likewise. (java_complete_lhs): Use nested_field_access_fix instead of outer_field_access_fix. (patch_unary_op): Rename outer_field_flag to nested_field_flag. Use nested_field_expanded_access_p instead of outer_field_expanded_access_p. Use nested_field_access_fix instead of outer_field_access_fix. (check_thrown_exceptions): Use NESTED_FIELD_ACCESS_IDENTIFIER_P instead of OUTER_FIELD_ACCESS_IDENTIFIER_P. libjava: 2005-10-05 Ranjit Mathew More testsuite adjustments for PR java/19870. * testsuite/libjava.lang/PR19870_2.java: New testcase. * testsuite/libjava.lang/PR19870_2.out: Expected output for the new testcase. * testsuite/libjava.jacks/jacks.xfail: Remove 8.5.2-non-static-member-usage-2 and add 15.12.3-explicit-constructor-9. 2005-10-05 Tom Tromey PR java/21844: * testsuite/libjava.lang/pr21844.java: New file. * testsuite/libjava.lang/pr21844.out: New file. 2005-10-05 Ranjit Mathew Testsuite adjustments for PR java/19870. * testsuite/libjava.lang/PR19870.java: New testcase. * testsuite/libjava.lang/PR19870.out: Expected output for the testcase. * testsuite/libjava.jacks/jacks.xfail: Add 8.5.2-accessible-static-member-usage-3 and 15.8.4-static-2 Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/java/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.1556.2.34&r2=1.1556.2.35 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/java/decl.c.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.209.4.4&r2=1.209.4.5 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/java/java-tree.h.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.226.8.3&r2=1.226.8.4 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/java/jcf-write.c.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.162.4.1&r2=1.162.4.2 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/java/parse.y.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.528.6.4&r2=1.528.6.5 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libjava/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.3391.2.103&r2=1.3391.2.104 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libjava/testsuite/libjava.jacks/jacks.xfail.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.19.8.2&r2=1.19.8.3 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libjava/testsuite/libjava.lang/PR19870.java.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=NONE&r2=1.1.24.1 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libjava/testsuite/libjava.lang/PR19870.out.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=NONE&r2=1.1.24.1 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libjava/testsuite/libjava.lang/PR19870_2.java.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=NONE&r2=1.1.18.1 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libjava/testsuite/libjava.lang/PR19870_2.out.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=NONE&r2=1.1.18.1 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20338