title: Make 3.82 - Backward incompatibility issue?
body: <p>I'm having some issues after try to run some small Makefile with make 3.82.</p>
  
  <p>error:</p>
  
  <pre><code>[me@localhost make]$ make
   Makefile:3: *** empty variable name.  Stop.
  </code></pre>
  
  <p>This works with make 3.81, but not with the new one. I know there are some backward compatibilities with the old version.</p>
  
  <p>I have two Makefiles, a base one and main one.</p>
  
  <p>This is my Makebase</p>
  
  <pre><code>define TestFile
  ifeq ($$(shell test $(1) $(2) || echo 1),1)
      $$(error $(2) mmm, not found)
  endif
  endef
  
  define CheckIt
  $(eval $(call TestFile,-d,$(1)))
  endef
  
  define CheckDir
  p := $(foreach d,$1,$(call CheckIt,$d))
  endef
  
  
  define SomeCheck
  $(call CheckDir,$(1))
  endef
  </code></pre>
  
  <p>This is my Makefile</p>
  
  <pre><code>include Makebase
  
  $(call SomeCheck, ~/test/make)
  </code></pre>
  
  <p>As I said, it works fine in make 3.81.</p>
  
  <p>Any help will be appreciated.
  Thanks</p>
  
  <p>BR</p>