Sat Sep  3 16:03:25 EDT 2005  Kito Danya Dietrich  <kito@gentoo.org>

	* hard-locale.h (hard_locale): Declare xmalloc in global scope rather than
	function scope which gcc-4.x rejects.

--- gawk-3.1.5/hard-locale.h
+++ gawk-3.1.5/hard-locale.h
@@ -21,6 +21,7 @@
    along with this program; if not, write to the Free Software Foundation,
    Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.  */
 
+static ptr_t xmalloc PARAMS ((size_t n));
 
 /* Return nonzero if the current CATEGORY locale is hard, i.e. if you
    can't get away with assuming traditional C or POSIX behavior.  */
@@ -40,7 +41,6 @@
       if (strcmp (p, "C") == 0 || strcmp (p, "POSIX") == 0)
 	hard = 0;
 # else
-      static ptr_t xmalloc PARAMS ((size_t n));
 
       char *locale = xmalloc (strlen (p) + 1);
       strcpy (locale, p);
