Based on Elbert's report: http://thread.gmane.org/gmane.comp.gnu.m4.bugs/2447

I'm committing this.

>From e9136009421f7de5d4eb9ae04b10b2c3094ce0cd Mon Sep 17 00:00:00 2001
From: Eric Blake <[EMAIL PROTECTED]>
Date: Fri, 11 Apr 2008 10:22:22 -0600
Subject: [PATCH] Avoid compile failure on OS/2.

* lib/regex_internal.h (internal_function): Disable optimization
on OS/2 (__EMX__), where it caused compiler error.
Reported by Elbert Pol.

Signed-off-by: Eric Blake <[EMAIL PROTECTED]>
---
 ChangeLog            |    9 ++++++++-
 lib/regex_internal.h |    4 ++--
 2 files changed, 10 insertions(+), 3 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 4043cac..183801c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,7 +1,14 @@
+2008-04-11  Eric Blake  <[EMAIL PROTECTED]>
+
+       Avoid compile failure on OS/2.
+       * lib/regex_internal.h (internal_function): Disable optimization
+       on OS/2 (__EMX__), where it caused compiler error.
+       Reported by Elbert Pol.
+
 2008-04-11  Bruno Haible  <[EMAIL PROTECTED]>
 
        Flush the standard error stream before aborting. Needed on netlabs.org
-       klibc (derived from emx+gcc libc).
+       klibc (derived from emx+gcc libc) and mingw.
        * tests/test-argmatch.c (ASSERT): Call fflush(stderr) before abort().
        * tests/test-array_list.c (ASSERT): Likewise.
        * tests/test-array_oset.c (ASSERT): Likewise.
diff --git a/lib/regex_internal.h b/lib/regex_internal.h
index 5c07f93..920177a 100644
--- a/lib/regex_internal.h
+++ b/lib/regex_internal.h
@@ -1,5 +1,5 @@
 /* Extended regular expression matching and search library.
-   Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, 
Inc.
+   Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software 
Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Isamu Hasegawa <[EMAIL PROTECTED]>.
 
@@ -421,7 +421,7 @@ struct re_dfa_t;
 typedef struct re_dfa_t re_dfa_t;
 
 #ifndef _LIBC
-# ifdef __i386__
+# if defined __i386__ && !defined __EMX__
 #  define internal_function   __attribute ((regparm (3), stdcall))
 # else
 #  define internal_function
-- 
1.5.5





Reply via email to