aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Clifton <nickc@cambridge.redhat.com>2002-04-17 16:26:28 +0000
committerNick Clifton <nickc@gcc.gnu.org>2002-04-17 16:26:28 +0000
commit169ce44d8d6eabff9575df22e79f1365c5f1a9fb (patch)
tree31bdf22d765296883c32bbc3d748a1a218b87e48
parentb30d21159d82a20b665f08be437c0687b1bce814 (diff)
downloadgcc-169ce44d8d6eabff9575df22e79f1365c5f1a9fb.zip
gcc-169ce44d8d6eabff9575df22e79f1365c5f1a9fb.tar.gz
gcc-169ce44d8d6eabff9575df22e79f1365c5f1a9fb.tar.bz2
gcc.c (read_specs): Detect and fail if an attempt is made to rename a spec string to an already...
2002-04-17 Nick Clifton <nickc@cambridge.redhat.com> * gcc.c (read_specs): Detect and fail if an attempt is made to rename a spec string to an already existing string. From-SVN: r52426
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/gcc.c8
2 files changed, 12 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 9f6ec57..5e50e52 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2002-04-17 Nick Clifton <nickc@cambridge.redhat.com>
+
+ * gcc.c (read_specs): Detect and fail if an attempt is made to
+ rename a spec string to an already existing string.
+
2002-04-17 Ulrich Weigand <uweigand@de.ibm.com>
* config/s390/s390.c (legitimize_pic_address): Do not generate
diff --git a/gcc/gcc.c b/gcc/gcc.c
index 8fa6bb5..8e0106c 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -1862,8 +1862,9 @@ read_specs (filename, main_p)
{
int name_len;
struct spec_list *sl;
+ struct spec_list *newsl;
- /* Get original name */
+ /* Get original name. */
p1 += sizeof "%rename";
while (*p1 == ' ' || *p1 == '\t')
p1++;
@@ -1909,6 +1910,11 @@ read_specs (filename, main_p)
if (strcmp (p1, p2) == 0)
continue;
+ for (newsl = specs; newsl; newsl = newsl->next)
+ if (strcmp (newsl->name, p2) == 0)
+ fatal ("%s: attempt to rename spec '%s' to already defined spec '%s'",
+ filename, p1, p2);
+
if (verbose_flag)
{
notice ("rename spec %s to %s\n", p1, p2);