Subject: 30.0.50; configure prints error with CONFIG_SHELL=/bin/sh
From: Po Lu <[email-masked]>
To: [email-masked]
Date: Tue, 25 Apr 2023 20:19:45 +0800
List-Id: <debbugs-submit.debbugs.gnu.org>

On a Solaris 10 system, run:

  % CONFIG_SHELL=/bin/sh ./configure CC="/opt/SUNwspro/bin/cc -m64"

this will result in several errors, which I've now fixed.  However,
configure then complains:

checking for variable-length arrays... yes
./configure: !: not found
./configure: !: not found
./configure: !: not found
./configure: !: not found
./configure: !: not found
./configure: !: not found

which seems to be harmless, but is probably a bug somewhere in gnulib.
The Autoconf manual says:

     Using ‘!’ is not portable.  Instead of:

          if ! cmp -s file file.new; then
            mv file.new file
          fi

     use:

          if cmp -s file file.new; then :; else
            mv file.new file
          fi

so this should not appear in configure:

  func_gl_gnulib_m4code_260941c0e5dc67ec9e87d1fb321c300b ()
  {
    if ! $gl_gnulib_enabled_260941c0e5dc67ec9e87d1fb321c300b; then

      gl_gnulib_enabled_260941c0e5dc67ec9e87d1fb321c300b=true
      if case $host_os in mingw*) false;; *) :;; esac; then
        func_gl_gnulib_m4code_open
      fi
    fi
  }
  func_gl_gnulib_m4code_cloexec ()
  {
    if ! $gl_gnulib_enabled_cloexec; then

      gl_gnulib_enabled_cloexec=true
    fi
  }
  func_gl_gnulib_m4code_dirfd ()
  {
    if ! $gl_gnulib_enabled_dirfd; then