[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