Fixed bug 2121 - GCC throws error on SDL_FORCE_INLINE when compiling with -ansi
authorSam Lantinga <slouken@libsdl.org>
Mon, 30 Sep 2013 22:35:32 -0700
changeset 7771 4434498bf4b9
parent 7770 28031e0042b2
child 7772 6b3cc8b7c589
Fixed bug 2121 - GCC throws error on SDL_FORCE_INLINE when compiling with -ansi
include/begin_code.h
src/filesystem/cocoa/SDL_sysfilesystem.m
src/video/cocoa/SDL_cocoamodes.m
src/video/cocoa/SDL_cocoashape.m
src/video/cocoa/SDL_cocoawindow.m
--- a/include/begin_code.h	Mon Sep 30 22:16:14 2013 -0700
+++ b/include/begin_code.h	Mon Sep 30 22:35:32 2013 -0700
@@ -99,11 +99,9 @@
 #endif
 #endif /* Compiler needs structure packing set */
 
+#ifndef __inline__
 /* Set up compiler-specific options for inlining functions */
 #ifndef SDL_INLINE_OKAY
-#ifdef __GNUC__
-#define SDL_INLINE_OKAY
-#else
 /* Add any special compiler-specific cases here */
 #if defined(_MSC_VER) || defined(__BORLANDC__) || \
     defined(__DMC__) || defined(__SC__) || \
@@ -112,31 +110,34 @@
 #ifndef __inline__
 #define __inline__  __inline
 #endif
-#define SDL_INLINE_OKAY
+#define SDL_INLINE_OKAY 1
 #else
 #if !defined(__MRC__) && !defined(_SGI_SOURCE)
 #ifndef __inline__
 #define __inline__ inline
 #endif
-#define SDL_INLINE_OKAY
+#define SDL_INLINE_OKAY 1
 #endif /* Not a funky compiler */
 #endif /* Visual C++ */
-#endif /* GNU C */
 #endif /* SDL_INLINE_OKAY */
 
 /* If inlining isn't supported, remove "__inline__", turning static
    inlined functions into static functions (resulting in code bloat
    in all files which include the offending header files)
 */
-#ifndef SDL_INLINE_OKAY
+#if !SDL_INLINE_OKAY || __STRICT_ANSI__
+#ifdef __inline__
+#undef __inline__
+#endif
 #define __inline__
 #endif
+#endif /* __inline__ not defined */
 
 #ifndef SDL_FORCE_INLINE
 #if defined(_MSC_VER)
 #define SDL_FORCE_INLINE __forceinline
 #elif ( (defined(__GNUC__) && (__GNUC__ >= 4)) || defined(__clang__) )
-#define SDL_FORCE_INLINE __attribute__((always_inline)) static inline
+#define SDL_FORCE_INLINE __attribute__((always_inline)) static __inline__
 #else
 #define SDL_FORCE_INLINE static __inline__
 #endif
--- a/src/filesystem/cocoa/SDL_sysfilesystem.m	Mon Sep 30 22:16:14 2013 -0700
+++ b/src/filesystem/cocoa/SDL_sysfilesystem.m	Mon Sep 30 22:35:32 2013 -0700
@@ -73,9 +73,9 @@
     NSArray *array = NSSearchPathForDirectoriesInDomains(NSApplicationSupportDirectory, NSUserDomainMask, YES);
     char *retval = NULL;
 
-    (void) org;  // unused on Mac OS X and iOS.
+    (void) org;  /* unused on Mac OS X and iOS. */
 
-    if ([array count] > 0) {  // we only want the first item in the list.
+    if ([array count] > 0) {  /* we only want the first item in the list. */
         NSString *str = [array objectAtIndex:0];
         const char *base = [str UTF8String];
         if (base) {
--- a/src/video/cocoa/SDL_cocoamodes.m	Mon Sep 30 22:16:14 2013 -0700
+++ b/src/video/cocoa/SDL_cocoamodes.m	Mon Sep 30 22:35:32 2013 -0700
@@ -33,7 +33,9 @@
 /* This gets us MAC_OS_X_VERSION_MIN_REQUIRED... */
 #include <AvailabilityMacros.h>
 
-static inline void Cocoa_ToggleMenuBar(const BOOL show)
+
+static void
+Cocoa_ToggleMenuBar(const BOOL show)
 {
     /* !!! FIXME: keep an eye on this.
      * ShowMenuBar/HideMenuBar is officially unavailable for 64-bit binaries.
@@ -57,7 +59,7 @@
 #define MAC_OS_X_VERSION_MIN_REQUIRED 1050
 #endif
 
-static inline BOOL
+static BOOL
 IS_SNOW_LEOPARD_OR_LATER(_THIS)
 {
 #if FORCE_OLD_API
@@ -179,7 +181,7 @@
     return SDL_TRUE;
 }
 
-static inline void
+static void
 Cocoa_ReleaseDisplayMode(_THIS, const void *moderef)
 {
     if (IS_SNOW_LEOPARD_OR_LATER(_this)) {
@@ -187,7 +189,7 @@
     }
 }
 
-static inline void
+static void
 Cocoa_ReleaseDisplayModeList(_THIS, CFArrayRef modelist)
 {
     if (IS_SNOW_LEOPARD_OR_LATER(_this)) {
--- a/src/video/cocoa/SDL_cocoashape.m	Mon Sep 30 22:16:14 2013 -0700
+++ b/src/video/cocoa/SDL_cocoashape.m	Mon Sep 30 22:35:32 2013 -0700
@@ -82,8 +82,8 @@
         data->saved = SDL_FALSE;
     }
 
-    //[data->context saveGraphicsState];
-    //data->saved = SDL_TRUE;
+    /*[data->context saveGraphicsState];*/
+    /*data->saved = SDL_TRUE;*/
     [NSGraphicsContext setCurrentContext:data->context];
 
     [[NSColor clearColor] set];
--- a/src/video/cocoa/SDL_cocoawindow.m	Mon Sep 30 22:16:14 2013 -0700
+++ b/src/video/cocoa/SDL_cocoawindow.m	Mon Sep 30 22:35:32 2013 -0700
@@ -44,7 +44,7 @@
 
 static Uint32 s_moveHack;
 
-static __inline__ void ConvertNSRect(NSRect *r)
+static void ConvertNSRect(NSRect *r)
 {
     r->origin.y = CGDisplayPixelsHigh(kCGDirectMainDisplay) - r->origin.y - r->size.height;
 }
@@ -920,8 +920,9 @@
     SDL_WindowData *windowData = ((SDL_WindowData *) window->driverdata);
     NSWindow *nswindow = windowData->nswindow;
 
-    // makeKeyAndOrderFront: has the side-effect of deminiaturizing and showing
-    // a minimized or hidden window, so check for that before showing it.
+    /* makeKeyAndOrderFront: has the side-effect of deminiaturizing and showing
+       a minimized or hidden window, so check for that before showing it.
+     */
     [windowData->listener pauseVisibleObservation];
     if (![nswindow isMiniaturized] && [nswindow isVisible]) {
         [nswindow makeKeyAndOrderFront:nil];