From 309ca98d963ae26ba2f709b17783846c27ee8f01 Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Tue, 12 Jul 2005 22:35:03 +0000 Subject: re PR java/19674 (Empty declaration through semicolon (;) causes compile failure) PR java/19674: * parse-scan.y (interface_member_declaration): Added empty_statement. From-SVN: r101948 --- gcc/java/ChangeLog | 6 ++++++ gcc/java/jvspec.c | 22 ++++++++++++++-------- gcc/java/parse-scan.y | 1 + 3 files changed, 21 insertions(+), 8 deletions(-) (limited to 'gcc') diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog index b1eed19..c45a791 100644 --- a/gcc/java/ChangeLog +++ b/gcc/java/ChangeLog @@ -1,3 +1,9 @@ +2005-07-12 Tom Tromey + + PR java/19674: + * parse-scan.y (interface_member_declaration): Added + empty_statement. + 2005-07-08 Daniel Berlin * java-tree.h (LABEL_RETURN_LABELS): Use decl_non_common. diff --git a/gcc/java/jvspec.c b/gcc/java/jvspec.c index e4f4d18..2163a3c 100644 --- a/gcc/java/jvspec.c +++ b/gcc/java/jvspec.c @@ -1,6 +1,6 @@ /* Specific flags and argument handling of the front-end of the GNU compiler for the Java(TM) language. - Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 + Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. This file is part of GCC. @@ -493,11 +493,22 @@ lang_specific_driver (int *in_argc, const char *const **in_argv, arglist = xmalloc ((num_args + 1) * sizeof (char *)); j = 0; - for (i = 0; i < argc; i++, j++) + arglist[j++] = argv[0]; + + if (combine_inputs || indirect_files_count > 0) + arglist[j++] = "-ffilelist-file"; + + if (combine_inputs) + { + arglist[j++] = "-xjava"; + arglist[j++] = filelist_filename; + } + + for (i = 1; i < argc; i++, j++) { arglist[j] = argv[i]; - if ((args[i] & PARAM_ARG) || i == 0) + if ((args[i] & PARAM_ARG)) continue; if ((args[i] & RESOURCE_FILE_ARG) != 0) @@ -559,15 +570,10 @@ lang_specific_driver (int *in_argc, const char *const **in_argv, } } - if (combine_inputs || indirect_files_count > 0) - arglist[j++] = "-ffilelist-file"; - if (combine_inputs) { if (fclose (filelist_file)) pfatal_with_name (filelist_filename); - arglist[j++] = "-xjava"; - arglist[j++] = filelist_filename; } /* If we saw no -O or -g option, default to -g1, for javac compatibility. */ diff --git a/gcc/java/parse-scan.y b/gcc/java/parse-scan.y index 2b15646..71c43a7 100644 --- a/gcc/java/parse-scan.y +++ b/gcc/java/parse-scan.y @@ -637,6 +637,7 @@ interface_member_declaration: | abstract_method_declaration | class_declaration /* Added, JDK1.1 inner classes */ | interface_declaration /* Added, JDK1.1 inner classes */ +| empty_statement ; constant_declaration: -- cgit v1.1