diff -ubr grub-2.00-orig/util/bash-completion.d/grub-completion.bash.in grub-2.00/util/bash-completion.d/grub-completion.bash.in
--- grub-2.00-orig/util/bash-completion.d/grub-completion.bash.in	2012-10-16 19:02:36.342733957 +0200
+++ grub-2.00/util/bash-completion.d/grub-completion.bash.in	2012-10-16 19:04:48.262733941 +0200
@@ -17,6 +17,12 @@
 # along with GRUB.  If not, see <http://www.gnu.org/licenses/>.
 # bash completion for grub
 
+have()
+{
+    unset -v have
+    _have $1 && have=yes
+}
+
 __grub_dir() {
     local i c=1 boot_dir
 
@@ -479,6 +485,7 @@
 have ${__grub_script_check_program} && \
  complete -F _grub_script_check -o filenames ${__grub_script_check_program}
 
+unset -f have
 
 # Local variables:
 # mode: shell-script
