]> gcc.gnu.org Git - gcc.git/commitdiff
jvspec.c (lang_specific_driver): Fix -C handling.
authorPer Bothner <per@bothner.com>
Fri, 16 Mar 2001 04:32:05 +0000 (20:32 -0800)
committerPer Bothner <bothner@gcc.gnu.org>
Fri, 16 Mar 2001 04:32:05 +0000 (20:32 -0800)
* jvspec.c (lang_specific_driver):  Fix -C handling.
Check -save-temps to see if temp @FILE should be deleted.
Follow-up to/fix for February 16 patch.

From-SVN: r40530

gcc/java/ChangeLog
gcc/java/jvspec.c

index 80e2102d083420445927a219d76b173c0c2007e1..ebc9592f03652486515a6533a492e8d2d0e83543 100644 (file)
@@ -1,5 +1,9 @@
 2001-03-13  Per Bothner  <per@bothner.com>
 
+       * jvspec.c (lang_specific_driver):  Fix -C handling.
+       Check -save-temps to see if temp @FILE should be deleted.
+       Follow-up to/fix for February 16 patch.
+
        * verify.c (verify_jvm_instructions):  Better error msgs for dup.
        (type_stack_dup):  Remove no-longer neded error check.
 
index 684811ac5ee46359a60ce885f3da367dbdd39c49..f1d55c65e8f9623a5a6578454dc8e90088eb6360 100644 (file)
@@ -101,6 +101,8 @@ lang_specific_driver (in_argc, in_argv, in_added_libraries)
   /* If non-zero, the user gave us the `-v' flag.  */ 
   int saw_verbose_flag = 0;
 
+  int saw_save_temps = 0;
+
   /* This will be 0 if we encounter a situation where we should not
      link in libgcj.  */
   int library = 1;
@@ -302,6 +304,8 @@ lang_specific_driver (in_argc, in_argv, in_added_libraries)
              will_link = 0;
              continue;
            }
+          else if (strcmp (argv[i], "-save-temps") == 0)
+           saw_save_temps = 1;
           else if (strcmp (argv[i], "-static-libgcc") == 0
                    || strcmp (argv[i], "-static") == 0)
            shared_libgcc = 0;
@@ -363,7 +367,8 @@ lang_specific_driver (in_argc, in_argv, in_added_libraries)
       if (saw_o)
        fatal ("cannot specify both -C and -o");
     }
-  if (saw_o && java_files_count + (saw_C ? 0 : class_files_count) > 1)
+  if ((saw_o && java_files_count + class_files_count > 1)
+      || (saw_C && java_files_count > 1))
     combine_inputs = 1;
   if (class_files_count > 1)
     combine_inputs = 1;
@@ -373,7 +378,7 @@ lang_specific_driver (in_argc, in_argv, in_added_libraries)
       filelist_filename = make_temp_file ("jx");
       if (filelist_filename == NULL)
        fatal ("cannot create temporary file");
-      record_temp_file (filelist_filename, 1, 0);
+      record_temp_file (filelist_filename, ! saw_save_temps, 0);
       filelist_file = fopen (filelist_filename, "w");
       if (filelist_file == NULL)
        pfatal_with_name (filelist_filename);
This page took 0.102557 seconds and 5 git commands to generate.