aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ada/ChangeLog7
-rw-r--r--gcc/ada/misc.c6
2 files changed, 9 insertions, 4 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index 488ba98..ca6573c 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,6 +1,11 @@
+2003-07-04 Matt Kraai <kraai@alumni.cmu.edu>
+
+ * misc.c (gnat_argv): Revert last change.
+ (gnat_handle_option, gnat_init_options): Copy arguments.
+
2003-07-03 Neil Booth <neil@daikokuya.co.uk>
- * misc.c (save_argv): Make const.
+ * misc.c (gnat_argv): Make const.
2003-07-02 Neil Booth <neil@daikokuya.co.uk>
diff --git a/gcc/ada/misc.c b/gcc/ada/misc.c
index 54c3454..ca9a036 100644
--- a/gcc/ada/misc.c
+++ b/gcc/ada/misc.c
@@ -186,7 +186,7 @@ const char **save_argv;
/* gnat standard argc argv */
extern int gnat_argc;
-extern const char **gnat_argv;
+extern char **gnat_argv;
static void internal_error_function PARAMS ((const char *, va_list *));
static void gnat_adjust_rli PARAMS ((record_layout_info));
@@ -269,7 +269,7 @@ gnat_handle_option (size_t scode, const char *arg, int value ATTRIBUTE_UNUSED)
if (save_argv[++i][0] != '-')
{
/* Preserve output filename as GCC doesn't save it for GNAT. */
- gnat_argv[gnat_argc] = save_argv[i];
+ gnat_argv[gnat_argc] = xstrdup (save_argv[i]);
gnat_argc++;
break;
}
@@ -286,7 +286,7 @@ gnat_init_options (unsigned int argc, const char **argv)
{
/* Initialize gnat_argv with save_argv size. */
gnat_argv = (char **) xmalloc ((argc + 1) * sizeof (argv[0]));
- gnat_argv[0] = argv[0]; /* name of the command */
+ gnat_argv[0] = xstrdup (argv[0]); /* name of the command */
gnat_argc = 1;
save_argc = argc;