summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoland McGrath <roland@redhat.com>1994-04-05 10:17:01 +0000
committerRoland McGrath <roland@redhat.com>1994-04-05 10:17:01 +0000
commit3580cdedd821a8b6fafe98371616c859441fa2d8 (patch)
treeee615b0a1e81a485baaa759e5378301a1ba0f37b
parent108cca9aa553c5d5a4d49f69f0f8970a911c81eb (diff)
downloadgunmake-3580cdedd821a8b6fafe98371616c859441fa2d8.tar.gz
(enter_file): If there is already a double-colon entry for the file, set
NEW->double_colon to that pointer. (file_hash_enter): Use FILE->double_colon to find all entries to set name.
-rw-r--r--file.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/file.c b/file.c
index 21335d4..1545291 100644
--- a/file.c
+++ b/file.c
@@ -1,5 +1,5 @@
/* Target file hash table management for GNU Make.
-Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993 Free Software Foundation, Inc.
+Copyright (C) 1988, 89, 90, 91, 92, 93, 94 Free Software Foundation, Inc.
This file is part of GNU Make.
GNU Make is free software; you can redistribute it and/or modify
@@ -114,6 +114,7 @@ enter_file (name)
else
{
/* There is already a double-colon entry for this file. */
+ new->double_colon = f;
while (f->prev != 0)
f = f->prev;
f->prev = new;
@@ -188,7 +189,8 @@ file_hash_enter (file, name, oldhash, oldname)
/* Give FILE its new name. */
- for (f = file; f != 0; f = f->prev)
+ file->name = name;
+ for (f = file->double_colon; f != 0; f = f->prev)
f->name = name;
if (oldfile == 0)