From 935879b3002c31d18933f4cad15f93bae5a948ea Mon Sep 17 00:00:00 2001 From: "Eric S. Raymond" Date: Fri, 10 Dec 2010 06:59:53 -0500 Subject: Don're register requires more than once. --- deheader | 7 ++++--- test/regress.chk | 12 ------------ 2 files changed, 4 insertions(+), 15 deletions(-) diff --git a/deheader b/deheader index 4ec85a9..d8d9986 100755 --- a/deheader +++ b/deheader @@ -131,9 +131,10 @@ class InclusionMap: print "deheader: ignoring %s (conditional inclusion)" % name for (r, h) in requirements: if r.search(line): - if verbosity >= PROGRESS_DEBUG: - print "deheader: %s has requires %s from %s" % (sourcefile, h, r.pattern) - requires.append(h) + if h not in requires: + if verbosity >= PROGRESS_DEBUG: + print "deheader: %s has requires %s from %s" % (sourcefile, h, r.pattern) + requires.append(h) self.depends_on[sourcefile] = includes self.requires[sourcefile] = re.compile("|".join(requires)) # Duplicate-header detection diff --git a/test/regress.chk b/test/regress.chk index 5b70f47..ef6a689 100644 --- a/test/regress.chk +++ b/test/regress.chk @@ -5,30 +5,18 @@ deheader: test/duplicate.c has more than one inclusion of deheader: test/umask.c includes deheader: test/umask.c includes deheader: test/umask.c has requires | from umask\s*\( -deheader: test/umask.c has requires | from umask\s*\( deheader: test/a64l.c has requires from a64l\s*\( -deheader: test/a64l.c has requires from l64a\s*\( deheader: test/a64l.c includes -deheader: test/a64l.c has requires from a64l\s*\( -deheader: test/a64l.c has requires from l64a\s*\( deheader: test/abs.c includes deheader: test/access.c has requires from access\s*\( -deheader: test/access.c has requires from access\s*\( deheader: test/access.c includes -deheader: test/access.c has requires from access\s*\( -deheader: test/acos.c has requires from acos\s*\( deheader: test/acos.c has requires from acos\s*\( deheader: test/acos.c includes -deheader: test/acos.c has requires from acos\s*\( deheader: test/abort.c includes deheader: test/acosh.c has requires from acosh\s*\( -deheader: test/acosh.c has requires from acosh\s*\( deheader: test/acosh.c includes -deheader: test/acosh.c has requires from acosh\s*\( -deheader: test/advance.c has requires from advance\s*\( deheader: test/advance.c has requires from advance\s*\( deheader: test/advance.c includes -deheader: test/advance.c has requires from advance\s*\( deheader: in test/advance.c, retaining required '#include \n' deheader: test/string.c without succeeded. deheader: remove from test/string.c -- cgit v1.2.3-70-g09d2