title: GNU Make v3.82 rebuilds target while v3.81 doesn't
body: <p>I have the following makefile code:</p>
  
  <pre><code>NAME := test
  
  target1: $(addsuffix .bar,$(NAME))
  target2: $(addsuffix .dar,$(NAME))
  
  %.bar: $(INPUT)
      touch $@
  
  %.dar: %.bar
      touch $@
  </code></pre>
  
  <p>The I execute this makefile with GNU Make v3.81 like so:</p>
  
  <pre><code>user@node1:/data/user/Tests/oldfile3$ rm test.*
  removed `test.bar'
  removed `test.txt'
  user@node1:/data/user/Tests/oldfile3$ touch test.txt
  user@node1:/data/user/Tests/oldfile3$ make target2
  touch test.bar
  touch test.dar
  user@node1:/data/user/Tests/oldfile3$ make target2
  make: Nothing to be done for `target2'.
  user@node1:/data/user/Tests/oldfile3$ rm test.bar
  removed `test.bar'
  user@node1:/data/user/Tests/oldfile3$ make target2
  make: Nothing to be done for `target2'.
  user@node1:/data/user/Tests/oldfile3$ 
  </code></pre>
  
  <p>As I expect, intermediate file test.bar is not rebuild after removing it because test.dar is still up-to-date. But when I use GNU Make v3.82:</p>
  
  <pre><code>user@node1:/data/user/Tests/oldfile3$ rm test.*
  removed `test.dar'
  removed `test.txt'
  user@node1:/data/user/Tests/oldfile3$ touch test.txt
  user@node1:/data/user/Tests/oldfile3$ mk82 target2
  touch test.bar
  touch test.dar
  user@node1:/data/user/Tests/oldfile3$ mk82 target2
  make: Nothing to be done for `target2'.
  user@node1:/data/user/Tests/oldfile3$ rm test.bar
  removed `test.bar'
  user@node1:/data/user/Tests/oldfile3$ mk82 target2
  touch test.bar
  touch test.dar
  user@node1:/data/user/Tests/oldfile3$ 
  </code></pre>
  
  <p>Now when I remove test.bar and call make, it will rebuild test.bar and then test.dar. test.txt is still older than test.dar so why remake test.bar which relies on test.txt? This does not happen if I remove target1 like so:</p>
  
  <pre><code>NAME := test
  
  target2: $(addsuffix .dar,$(NAME))
  
  %.bar: $(INPUT)
      touch $@
  
  %.dar: %.bar
      touch $@
  </code></pre>
  
  <p>why does it build target1 when I do not specify it anywhere?</p>
  
  <p>Thanks,</p>
  
  <p>Martin</p>