silly hack to get around the compiler bug for old SUN CC compiler.
authorGengbin Zheng <gzheng@illinois.edu>
Thu, 27 Jan 2011 22:28:35 +0000 (16:28 -0600)
committerGengbin Zheng <gzheng@illinois.edu>
Thu, 27 Jan 2011 22:28:35 +0000 (16:28 -0600)
src/libs/ck-libs/ParFUM/Makefile
src/libs/ck-libs/multiphaseSharedArrays/msa-distArray.h

index 364f9b6e17474e79b34d058bc78108c71b450841..487acce403a1031ef87042232bc37e88b54d5223 100644 (file)
@@ -68,7 +68,7 @@ headers: $(HEADDEP)
 
 
 MsaHashtable.o: MsaHashtable.C $(HEADDEP)
-       $(MPICC) -c MsaHashtable.C $(INCS)
+       $(MPICC) -DFOR_SUN_CC_ONLY -c MsaHashtable.C $(INCS)
 
 mesh_modify.o: mesh_modify.C $(HEADDEP)
        $(MPICC) -c mesh_modify.C $(INCS)
@@ -98,7 +98,7 @@ call_init.o: call_init.c $(HEADDEP)
        $(CHARMC) -c call_init.c $(INCS)
 
 parallel_part.o: parallel_part.C $(HEADDEP) MsaHashtable.h
-       $(MPICC) -c parallel_part.C $(INCS)
+       $(MPICC) -DFOR_SUN_CC_ONLY -c parallel_part.C $(INCS)
 
 mesh_adjacency.o: mesh_adjacency.C $(HEADDEP)
        $(MPICC) -c mesh_adjacency.C $(INCS)
index 03d9f420a69558c180d7298fb703008007344aba..a9d2b0537de65ae30f1dc65f7bd0a8968dc79188 100644 (file)
@@ -166,12 +166,14 @@ public:
         return msa->get2(x);
     }
 
+#ifndef FOR_SUN_CC_ONLY
     // 2D Array access
     inline const ENTRY& get(int x, int y)
     {
         checkValid();
         return msa->get(x, y);
     }
+#endif
     inline const ENTRY& operator()(int x, int y) { return get(x, y); }
     inline const ENTRY& get2(int x, int y)
     {
@@ -179,12 +181,14 @@ public:
         return msa->get2(x, y);
     }
 
+#ifndef FOR_SUN_CC_ONLY
     // 3D Array Access
     inline const ENTRY& get(int x, int y, int z)
     {
         checkValid();
         return msa->get(x, y, z);
     }
+#endif
     inline const ENTRY& operator()(int x, int y, int z) { return get(x, y, z); }
     inline const ENTRY& get2(int x, int y, int z)
     {
@@ -317,24 +321,29 @@ public:
     inline Accumulable<MSA> operator() (int x)
     { return accumulate(x); }
 
+#ifndef FOR_SUN_CC_ONLY
     // 2D Array Access
     inline Accumulable<MSA> accumulate(int x, int y)
     {
         checkValid();
         return Accumulable<MSA>(msa->accumulate(x,y));
     }
+#endif
     inline Accumulable<MSA> operator() (int x, int y)
     { return accumulate(x,y); }
 
+#ifndef FOR_SUN_CC_ONLY
     // 3D Array Access
     inline Accumulable<MSA> accumulate(int x, int y, int z)
     {
         checkValid();
         return Accumulable<MSA>(msa->accumulate(x,y,z));
     }
+#endif
     inline Accumulable<MSA> operator() (int x, int y, int z)
     { return accumulate(x,y,z); }
 
+#ifndef FOR_SUN_CC_ONLY
     void accumulate(int x1, int y1, int z1, int x2, int y2, int z2, const ENTRY *buf)
     {
         checkValid();
@@ -357,6 +366,7 @@ public:
                 for (int iz = z1; iz <= z2; ++iz)
                     msa->accumulate(ix, iy, iz, buf[i++]);
     }
+#endif
 };