aboutsummaryrefslogtreecommitdiff
path: root/Carpet/CarpetLib
diff options
context:
space:
mode:
authorErik Schnetter <schnetter@gmail.com>2013-05-20 09:03:47 -0500
committerErik Schnetter <schnetter@gmail.com>2013-05-20 09:03:47 -0500
commitb441d66d16d0c81d83a7d52121f9f76b341b9262 (patch)
treef22256fef58dd039eb35c1605975b7c8368f1f10 /Carpet/CarpetLib
parent8ee9a934e99c8a929d9b166c73560e5c8bfa49c7 (diff)
CarpetLib: Add some comments explaining implementation
Diffstat (limited to 'Carpet/CarpetLib')
-rw-r--r--Carpet/CarpetLib/src/vect.cc4
1 files changed, 4 insertions, 0 deletions
diff --git a/Carpet/CarpetLib/src/vect.cc b/Carpet/CarpetLib/src/vect.cc
index 9fcaf0e4f..d2de5b52e 100644
--- a/Carpet/CarpetLib/src/vect.cc
+++ b/Carpet/CarpetLib/src/vect.cc
@@ -81,6 +81,9 @@ MPI_Datatype vect<T,D>::mpi_datatype () const
// Specialise some constructors for lower dimensions
// These functions are declared, but must not be used.
+// NOTE: __builtin_unreachable() triggers a bug in the OSX linker; we
+// therefore use assert(0) instead.
+
template<> vect<int,0>::vect (const int& x, const int& y) { assert(0); }
template<> vect<int,1>::vect (const int& x, const int& y) { assert(0); }
template<> vect<int,3>::vect (const int& x, const int& y) { assert(0); }
@@ -148,6 +151,7 @@ template size_t memoryof (const vect<T,D>&); \
template istream& operator>> (istream& is, vect<T,D>&); \
template ostream& operator<< (ostream& os, const vect<T,D>&);
+// need typedefs since macro calls can't have commas in arguments
typedef bboxset<int,dim> T1;
typedef vect<bboxset<int,dim>,2> T2;