aboutsummaryrefslogtreecommitdiff
path: root/gcc/java/jvspec.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/java/jvspec.c')
-rw-r--r--gcc/java/jvspec.c22
1 files changed, 8 insertions, 14 deletions
diff --git a/gcc/java/jvspec.c b/gcc/java/jvspec.c
index 2163a3c..e4f4d18 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, 2005
+ Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
This file is part of GCC.
@@ -493,22 +493,11 @@ lang_specific_driver (int *in_argc, const char *const **in_argv,
arglist = xmalloc ((num_args + 1) * sizeof (char *));
j = 0;
- 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++)
+ for (i = 0; i < argc; i++, j++)
{
arglist[j] = argv[i];
- if ((args[i] & PARAM_ARG))
+ if ((args[i] & PARAM_ARG) || i == 0)
continue;
if ((args[i] & RESOURCE_FILE_ARG) != 0)
@@ -570,10 +559,15 @@ 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. */