]> git.ipfire.org Git - thirdparty/make.git/commitdiff
Formerly rule.c.~6~
authorRoland McGrath <roland@redhat.com>
Tue, 14 Jul 1992 23:08:36 +0000 (23:08 +0000)
committerRoland McGrath <roland@redhat.com>
Tue, 14 Jul 1992 23:08:36 +0000 (23:08 +0000)
rule.c

diff --git a/rule.c b/rule.c
index 105cea5df81f6fc296f44ebf188785ae970d1b1d..e27a38e67170b9f27265255269904e28357a6d66 100644 (file)
--- a/rule.c
+++ b/rule.c
@@ -94,6 +94,8 @@ count_implicit_rule_limits ()
 
          if (p != 0 && p2 > p)
            {
+             /* There is a slash before the % in the dep name.
+                Extract the directory name.  */
              if (p == dep->name)
                ++p;
              if (p - dep->name > namelen)
@@ -108,12 +110,16 @@ count_implicit_rule_limits ()
 
              if (!dir_file_exists_p (name, "."))
                {
+                 /* The name is absolute and the directory does not exist.  */
                  if (*name == '/')
                    {
                      freerule (rule, lastrule);
+                     --num_pattern_rules;
                      goto end_main_loop;
                    }
                  else
+                   /* The directory does not exist, but
+                      it might be found in a VPATH directory.  */
                    rule->subdir = 1;
                }
            }
@@ -524,4 +530,8 @@ print_rule_data_base ()
 #endif
       puts (" reference nonexistent subdirectories.");
     }
+
+  if (num_pattern_rules != rules)
+    fatal ("BUG: num_pattern_rules wrong!  %u != %u",
+          num_pattern_rules, rules);
 }