[Scummvm-cvs-logs] SF.net SVN: scummvm:[43382] scummvm/branches/branch-1-0-0

joostp at users.sourceforge.net joostp at users.sourceforge.net
Fri Aug 14 19:30:29 CEST 2009


Revision: 43382
          http://scummvm.svn.sourceforge.net/scummvm/?rev=43382&view=rev
Author:   joostp
Date:     2009-08-14 17:30:16 +0000 (Fri, 14 Aug 2009)

Log Message:
-----------
backport MIPSpro compilation fixes

Modified Paths:
--------------
    scummvm/branches/branch-1-0-0/common/hashmap.h
    scummvm/branches/branch-1-0-0/graphics/scaler/scale2x.h
    scummvm/branches/branch-1-0-0/graphics/scaler/scale3x.h

Modified: scummvm/branches/branch-1-0-0/common/hashmap.h
===================================================================
--- scummvm/branches/branch-1-0-0/common/hashmap.h	2009-08-14 17:19:14 UTC (rev 43381)
+++ scummvm/branches/branch-1-0-0/common/hashmap.h	2009-08-14 17:30:16 UTC (rev 43382)
@@ -39,6 +39,13 @@
 #endif
 
 namespace Common {
+/**
+  * The sgi IRIX MIPSpro Compiler has difficulties with nested templates. 
+  * This and the other __sgi conditionals below work around these problems.
+  */
+#ifdef __sgi
+template<class T> class IteratorImpl;
+#endif
 
 // Enable the following #define if you want to check how many collisions the
 // code produces (many collisions indicate either a bad hash function, or a
@@ -125,7 +132,9 @@
 	int lookupAndCreateIfMissing(const Key &key);
 	void expandStorage(uint newCapacity);
 
+#ifndef __sgi
 	template<class T> friend class IteratorImpl;
+#endif
 
 	/**
 	 * Simple HashMap iterator implementation.
@@ -133,7 +142,11 @@
 	template<class NodeType>
 	class IteratorImpl {
 		friend class HashMap;
+#ifdef __sgi
+		template<class T> friend class Common::IteratorImpl;
+#else
 		template<class T> friend class IteratorImpl;
+#endif
 	protected:
 		typedef const HashMap hashmap_t;
 

Modified: scummvm/branches/branch-1-0-0/graphics/scaler/scale2x.h
===================================================================
--- scummvm/branches/branch-1-0-0/graphics/scaler/scale2x.h	2009-08-14 17:19:14 UTC (rev 43381)
+++ scummvm/branches/branch-1-0-0/graphics/scaler/scale2x.h	2009-08-14 17:30:16 UTC (rev 43382)
@@ -25,6 +25,11 @@
 #define __restrict__
 #endif
 
+#ifdef __sgi
+#define __restrict__ __restrict
+#endif
+
+
 typedef unsigned char scale2x_uint8;
 typedef unsigned short scale2x_uint16;
 typedef unsigned scale2x_uint32;

Modified: scummvm/branches/branch-1-0-0/graphics/scaler/scale3x.h
===================================================================
--- scummvm/branches/branch-1-0-0/graphics/scaler/scale3x.h	2009-08-14 17:19:14 UTC (rev 43381)
+++ scummvm/branches/branch-1-0-0/graphics/scaler/scale3x.h	2009-08-14 17:30:16 UTC (rev 43382)
@@ -25,6 +25,10 @@
 #define __restrict__
 #endif
 
+#ifdef __sgi
+#define __restrict__ __restrict
+#endif
+
 typedef unsigned char scale3x_uint8;
 typedef unsigned short scale3x_uint16;
 typedef unsigned scale3x_uint32;


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the Scummvm-git-logs mailing list