From d94748bb06db361a45f0f1de9d216269d9d62b68 Mon Sep 17 00:00:00 2001
From: Brad Barber <bradb@shore.net>
Date: Tue, 12 Jan 2010 19:54:01 -0500
Subject: [PATCH] Reviewed FIXUP and #pragma.  Tested QhullRidgeSet in
 QhullSet_test

---
 Announce.txt                           |   2 -
 cpp/Coordinates.h                      |   6 +-
 cpp/QhullHyperplane.h                  |   6 +-
 cpp/QhullLinkedList.h                  |   6 +-
 cpp/QhullPoint.h                       |   6 +-
 cpp/QhullPointSet.h                    |   8 +-
 cpp/QhullPoints.h                      |   6 +-
 cpp/QhullSet.cpp                       |   6 +-
 cpp/UsingLibQhull.cpp                  |   8 +-
 cpp/qhulltest/QhullFacetSet_test.cpp   |  12 +-
 cpp/qhulltest/QhullLinkedList_test.cpp |   9 +-
 cpp/qhulltest/QhullSet_test.cpp        |  70 +++++--
 cpp/qhulltest/Qhull_test.cpp           |  10 +-
 cpp/qhulltest/qhulltest.cpp            |   6 +-
 cpp/road/RoadError.h                   |   6 +-
 html/qh-get.htm                        |  17 +-
 html/qhull.man                         | 278 ++++++++++++-------------
 html/qhull.txt                         |  30 +--
 project/libqhullcpp/libqhullcpp.pro    |   6 +-
 src/Changes.txt                        | 218 +++++++++----------
 src/io.c                               |   6 +-
 src/rboxlib.c                          |   5 +-
 src/user.h                             |   4 +-
 23 files changed, 375 insertions(+), 356 deletions(-)

diff --git a/Announce.txt b/Announce.txt
index 7436c14..0d6193f 100644
--- a/Announce.txt
+++ b/Announce.txt
@@ -3,7 +3,6 @@
 
         http://www.qhull.org
         git@gitorious.org:qhull/qhull.git
-        http://savannah.nongnu.org/projects/qhull/
         http://www6.uniovi.es/ftp/pub/mirrors/geom.umn.edu/software/ghindex.html
         http://www.geomview.org
         http://www.geom.uiuc.edu
@@ -22,7 +21,6 @@ You can view the results in 2-d, 3-d and 4-d with Geomview.
 To download Qhull:
         http://www.qhull.org/download
         git@gitorious.org:qhull/qhull.git
-        http://savannah.nongnu.org/files/?group=qhull
 
 Download qhull-96.ps for:
 
diff --git a/cpp/Coordinates.h b/cpp/Coordinates.h
index 8414ad2..a062c42 100644
--- a/cpp/Coordinates.h
+++ b/cpp/Coordinates.h
@@ -1,8 +1,8 @@
 /****************************************************************************
 **
 ** Copyright (C) 2009-2010 C.B. Barber. All rights reserved.
-** $Id: //product/qhull/main/rel/cpp/Coordinates.h#34 $$Change: 1176 $
-** $DateTime: 2010/01/11 19:40:05 $$Author: bbarber $
+** $Id: //product/qhull/main/rel/cpp/Coordinates.h#35 $$Change: 1179 $
+** $DateTime: 2010/01/12 19:53:15 $$Author: bbarber $
 **
 ****************************************************************************/
 
@@ -221,7 +221,7 @@ public:
         bool            operator>(const const_iterator &other) const { return i>other.i; }
         bool            operator>=(const const_iterator &other) const { return i>=other.i; }
 
-        const_iterator  operator++() { return const_iterator(++i); } //FIXUP QH10000 -- too much copying
+        const_iterator  operator++() { return const_iterator(++i); } //FIXUP QH10014 -- too much copying
         const_iterator  operator++(int) { return const_iterator(i++); }
         const_iterator  operator--() { return const_iterator(--i); }
         const_iterator  operator--(int) { return const_iterator(i--); }
diff --git a/cpp/QhullHyperplane.h b/cpp/QhullHyperplane.h
index cde6f48..ae3835f 100644
--- a/cpp/QhullHyperplane.h
+++ b/cpp/QhullHyperplane.h
@@ -1,8 +1,8 @@
 /****************************************************************************
 **
 ** Copyright (C) 2009-2010 C.B. Barber. All rights reserved.
-** $Id: //product/qhull/main/rel/cpp/QhullHyperplane.h#12 $$Change: 1167 $
-** $DateTime: 2010/01/08 19:03:17 $$Author: bbarber $
+** $Id: //product/qhull/main/rel/cpp/QhullHyperplane.h#13 $$Change: 1179 $
+** $DateTime: 2010/01/12 19:53:15 $$Author: bbarber $
 **
 ****************************************************************************/
 
@@ -116,7 +116,7 @@ QHULL_DECLARE_SEQUENTIAL_ITERATOR(QhullHyperplane, coordT)
 #//Global functions
 
 std::ostream &operator<<(std::ostream &os, const orgQhull::QhullHyperplane::PrintHyperplane &pr);
-std::ostream &operator<<(std::ostream &os, const orgQhull::QhullHyperplane &p); //FIXUP QH10000 -- multiple instances if define here
+std::ostream &operator<<(std::ostream &os, const orgQhull::QhullHyperplane &p); //FIXUP QH10015 -- multiple instances if define here
 
 #endif // QHHYPERPLANE_H
 
diff --git a/cpp/QhullLinkedList.h b/cpp/QhullLinkedList.h
index be22b80..4c03a3c 100644
--- a/cpp/QhullLinkedList.h
+++ b/cpp/QhullLinkedList.h
@@ -1,8 +1,8 @@
 /****************************************************************************
 **
 ** Copyright (C) 2008-2010 C.B. Barber. All rights reserved.
-** $Id: //product/qhull/main/rel/cpp/QhullLinkedList.h#32 $$Change: 1167 $
-** $DateTime: 2010/01/08 19:03:17 $$Author: bbarber $
+** $Id: //product/qhull/main/rel/cpp/QhullLinkedList.h#33 $$Change: 1179 $
+** $DateTime: 2010/01/12 19:53:15 $$Author: bbarber $
 **
 ****************************************************************************/
 
@@ -177,7 +177,7 @@ public:
 };//QhullLinkedList
 
 template <typename T>
-class QhullLinkedListIterator // FiXUP QH10000 define QhullMutableLinkedListIterator
+class QhullLinkedListIterator // FiXUP QH10016 define QhullMutableLinkedListIterator
 {
     typedef typename QhullLinkedList<T>::const_iterator const_iterator;
     const QhullLinkedList<T> *c;
diff --git a/cpp/QhullPoint.h b/cpp/QhullPoint.h
index f0221e8..785877a 100644
--- a/cpp/QhullPoint.h
+++ b/cpp/QhullPoint.h
@@ -1,8 +1,8 @@
 /****************************************************************************
 **
 ** Copyright (C) 2009-2010 C.B. Barber. All rights reserved.
-** $Id: //product/qhull/main/rel/cpp/QhullPoint.h#33 $$Change: 1167 $
-** $DateTime: 2010/01/08 19:03:17 $$Author: bbarber $
+** $Id: //product/qhull/main/rel/cpp/QhullPoint.h#34 $$Change: 1179 $
+** $DateTime: 2010/01/12 19:53:15 $$Author: bbarber $
 **
 ****************************************************************************/
 
@@ -124,7 +124,7 @@ QHULL_DECLARE_SEQUENTIAL_ITERATOR(QhullPoint, coordT)
 #//Global functions
 
 std::ostream &operator<<(std::ostream &os, const orgQhull::QhullPoint::PrintPoint &pr);
-std::ostream &operator<<(std::ostream &os, const orgQhull::QhullPoint &p); // FIXUP QH10000 OK in c program but not inline { os << p.print(orgQhull::UsingLibQhull::NOqhRunId, ""); return os; }
+std::ostream &operator<<(std::ostream &os, const orgQhull::QhullPoint &p); // FIXUP QH10017 OK in c program but not inline { os << p.print(orgQhull::UsingLibQhull::NOqhRunId, ""); return os; }
 
 #endif // QHPOINT_H
 
diff --git a/cpp/QhullPointSet.h b/cpp/QhullPointSet.h
index 75d75bf..bc44980 100644
--- a/cpp/QhullPointSet.h
+++ b/cpp/QhullPointSet.h
@@ -1,8 +1,8 @@
 /****************************************************************************
 **
 ** Copyright (C) 2009-2010 C.B. Barber. All rights reserved.
-** $Id: //product/qhull/main/rel/cpp/QhullPointSet.h#19 $$Change: 1167 $
-** $DateTime: 2010/01/08 19:03:17 $$Author: bbarber $
+** $Id: //product/qhull/main/rel/cpp/QhullPointSet.h#20 $$Change: 1179 $
+** $DateTime: 2010/01/12 19:53:15 $$Author: bbarber $
 **
 ****************************************************************************/
 
@@ -45,7 +45,7 @@ public:
     typedef QhullPoint  value_type;
     typedef ptrdiff_t   difference_type;
     typedef int         size_type;
-    //typedef const value_type *const_pointer;    // FIXUP QH10000: QhullPointSet does not define pointer or reference due to point_dimension
+    //typedef const value_type *const_pointer;    // FIXUP QH10019: QhullPointSet does not define pointer or reference due to point_dimension
     //typedef const value_type &const_reference;
     //typedef value_type *pointer;
     //typedef value_type &reference;
@@ -223,7 +223,7 @@ public:
 };//QhullPointSet
 
 //derived from qiterator.h
-class QhullPointSetIterator { // FiXUP QH10000 define QhullMutablePointSetIterator
+class QhullPointSetIterator { // FiXUP QH10020 define QhullMutablePointSetIterator
     typedef QhullPointSet::const_iterator const_iterator;
     const QhullPointSet *c;
     const_iterator      i;
diff --git a/cpp/QhullPoints.h b/cpp/QhullPoints.h
index e5ddb3f..2e913e6 100644
--- a/cpp/QhullPoints.h
+++ b/cpp/QhullPoints.h
@@ -1,8 +1,8 @@
 /****************************************************************************
 **
 ** Copyright (C) 2009-2010 C.B. Barber. All rights reserved.
-** $Id: //product/qhull/main/rel/cpp/QhullPoints.h#30 $$Change: 1167 $
-** $DateTime: 2010/01/08 19:03:17 $$Author: bbarber $
+** $Id: //product/qhull/main/rel/cpp/QhullPoints.h#31 $$Change: 1179 $
+** $DateTime: 2010/01/12 19:53:15 $$Author: bbarber $
 **
 ****************************************************************************/
 
@@ -158,7 +158,7 @@ public:
         difference_type operator-(iterator other) const { QHULL_ASSERT(dimension()==other.dimension()); return (coordinates()-other.coordinates())/dimension(); }
     };//QhullPoints::iterator
 
-#//QhullPoints::const_iterator -- FIXUP QH10000 const_iterator same as iterator
+#//QhullPoints::const_iterator -- FIXUP QH10018 const_iterator same as iterator
     class const_iterator : public QhullPoint {
 
     public:
diff --git a/cpp/QhullSet.cpp b/cpp/QhullSet.cpp
index f746b47..3c9ea41 100644
--- a/cpp/QhullSet.cpp
+++ b/cpp/QhullSet.cpp
@@ -1,8 +1,8 @@
 /****************************************************************************
 **
 ** Copyright (C) 2008-2010 C.B. Barber. All rights reserved.
-** $Id: //product/qhull/main/rel/cpp/QhullSet.cpp#19 $$Change: 1167 $
-** $DateTime: 2010/01/08 19:03:17 $$Author: bbarber $
+** $Id: //product/qhull/main/rel/cpp/QhullSet.cpp#20 $$Change: 1179 $
+** $DateTime: 2010/01/12 19:53:15 $$Author: bbarber $
 **
 ****************************************************************************/
 
@@ -33,7 +33,7 @@ int QhullSetBase::count(const setT *set)
     if ((size= *sizep)) {
         size--;
         if (size > set->maxsize) {
-            // FIXUP QH10000 How to add additional output to a error? -- qh_setprint(qhmem.ferr, "set: ", set);
+            // FIXUP QH10022 How to add additional output to a error? -- qh_setprint(qhmem.ferr, "set: ", set);
             throw QhullError(10032, "QhullSet internal error: current set size %d is greater than maximum size %d\n",
                 size, set->maxsize);
         }
diff --git a/cpp/UsingLibQhull.cpp b/cpp/UsingLibQhull.cpp
index c69461d..446ce75 100644
--- a/cpp/UsingLibQhull.cpp
+++ b/cpp/UsingLibQhull.cpp
@@ -1,8 +1,8 @@
 /****************************************************************************
 **
 ** Copyright (C) 2008-2010 C.B. Barber. All rights reserved.
-** $Id: //product/qhull/main/rel/cpp/UsingLibQhull.cpp#6 $$Change: 1167 $
-** $DateTime: 2010/01/08 19:03:17 $$Author: bbarber $
+** $Id: //product/qhull/main/rel/cpp/UsingLibQhull.cpp#7 $$Change: 1179 $
+** $DateTime: 2010/01/12 19:53:15 $$Author: bbarber $
 **
 ****************************************************************************/
 
@@ -45,7 +45,7 @@ int UsingLibQhull::
 s_points_dimension= 0;
 
 int UsingLibQhull::
-s_vertex_dimension= 0;  // FIXUP QH10000: s_vertex_dimension is required if dimension>15.  Cannot store in QhullVertex
+s_vertex_dimension= 0;  // FIXUP QH10023: s_vertex_dimension is required if dimension>15.  Cannot store in QhullVertex
 
 bool UsingLibQhull::
 s_has_points= false;
@@ -94,7 +94,7 @@ UsingLibQhull(Qhull *q)
     qhullqh->old_qhstat= 0;
     qhullqh->old_tempstack= 0;
 #else
-    #error FIXUP QH10000 static qh_qh not tested.  Delete the line to try.
+    #error FIXUP QH10024 static qh_qh not tested.  Delete the line to try.
     if(qhullqh!=&qh_qh){
         throw QhullError(10040, "Qhull internal error: Qhull.qhullQh() is not qh_qh (%x, static).  Overwrite?", 0,0,0.0, &qh_qh);
     }
diff --git a/cpp/qhulltest/QhullFacetSet_test.cpp b/cpp/qhulltest/QhullFacetSet_test.cpp
index 9401f7a..642a1d1 100644
--- a/cpp/qhulltest/QhullFacetSet_test.cpp
+++ b/cpp/qhulltest/QhullFacetSet_test.cpp
@@ -1,14 +1,14 @@
 /****************************************************************************
 **
 ** Copyright (C) 2008-2010 C.B. Barber. All rights reserved.
-** $Id: //product/qhull/main/rel/cpp/qhulltest/QhullFacetSet_test.cpp#14 $$Change: 1176 $
-** $DateTime: 2010/01/11 19:40:05 $$Author: bbarber $
+** $Id: //product/qhull/main/rel/cpp/qhulltest/QhullFacetSet_test.cpp#15 $$Change: 1179 $
+** $DateTime: 2010/01/12 19:53:15 $$Author: bbarber $
 **
 ****************************************************************************/
 
 //pre-compiled headers
 #include <iostream>
-#include "../road/RoadTest.h" // FIXUP First for QHULL_USES_QT
+#include "../road/RoadTest.h"
 
 #include "QhullFacetSet.h"
 #include "QhullError.h"
@@ -70,9 +70,9 @@ void QhullFacetSet_test::
 t_convert()
 {
     RboxPoints rcube("c");
-    Qhull q(rcube,"QR0 QV2");  // rotated unit cube
-    QhullFacet f= q.firstFacet();
-    QhullFacetSet fs2= f.neighborFacets();
+    Qhull q2(rcube,"QR0 QV2");  // rotated unit cube
+    QhullFacet f2= q2.firstFacet();
+    QhullFacetSet fs2= f2.neighborFacets();
     QVERIFY(!fs2.isSelectAll());
     QCOMPARE(fs2.count(),2);
     std::vector<QhullFacet> fv= fs2.toStdVector();
diff --git a/cpp/qhulltest/QhullLinkedList_test.cpp b/cpp/qhulltest/QhullLinkedList_test.cpp
index dcd97ec..2e8c7fc 100644
--- a/cpp/qhulltest/QhullLinkedList_test.cpp
+++ b/cpp/qhulltest/QhullLinkedList_test.cpp
@@ -1,14 +1,14 @@
 /****************************************************************************
 **
 ** Copyright (f) 2009-2010 C.B. Barber. All rights reserved.
-** $Id: //product/qhull/main/rel/cpp/qhulltest/QhullLinkedList_test.cpp#15 $$Change: 1164 $
-** $DateTime: 2010/01/07 21:52:00 $$Author: bbarber $
+** $Id: //product/qhull/main/rel/cpp/qhulltest/QhullLinkedList_test.cpp#16 $$Change: 1179 $
+** $DateTime: 2010/01/12 19:53:15 $$Author: bbarber $
 **
 ****************************************************************************/
 
 //pre-compiled headers
 #include <QtCore/QList>
-#include "../road/RoadTest.h"// FIXUP First for QHULL_USES_QT
+#include "../road/RoadTest.h"
 
 #include "QhullLinkedList.h"
 #include "Qhull.h"
@@ -54,7 +54,6 @@ t_construct()
     {
         Qhull q(rcube,"Qt QR0");  // triangulation of rotated unit cube
         QCOMPARE(q.facetCount(), 12);
-        // FIXUP -- iterator or vertex for vertexList?
         QhullVertexList vs = QhullVertexList(q.beginVertex(), q.endVertex());
         QCOMPARE(vs.count(), 8);
         QCOMPARE(vs.size(), 8u);
@@ -65,7 +64,7 @@ t_construct()
         QVERIFY(!vs2.isEmpty());
         QVERIFY(!vs2.empty());
         QVERIFY(vs==vs2);
-        // vs= vs2; // private (compiler error)
+        // vs= vs2; // disabled.  Would not copy the vertices
         QhullVertexList vs3= vs2; // copy constructor
         QVERIFY(vs3==vs2);
     }
diff --git a/cpp/qhulltest/QhullSet_test.cpp b/cpp/qhulltest/QhullSet_test.cpp
index a948d4a..b309c50 100644
--- a/cpp/qhulltest/QhullSet_test.cpp
+++ b/cpp/qhulltest/QhullSet_test.cpp
@@ -1,8 +1,8 @@
 /****************************************************************************
 **
 ** Copyright (f) 2009-2010 C.B. Barber. All rights reserved.
-** $Id: //product/qhull/main/rel/cpp/qhulltest/QhullSet_test.cpp#20 $$Change: 1164 $
-** $DateTime: 2010/01/07 21:52:00 $$Author: bbarber $
+** $Id: //product/qhull/main/rel/cpp/qhulltest/QhullSet_test.cpp#21 $$Change: 1179 $
+** $DateTime: 2010/01/12 19:53:15 $$Author: bbarber $
 **
 ****************************************************************************/
 
@@ -11,6 +11,7 @@
 #include <QtCore/QList>
 #include "../road/RoadTest.h" // QT_VERSION
 
+#include "QhullRidge.h"
 #include "QhullFacetSet.h"
 #include "Qhull.h"
 
@@ -50,16 +51,19 @@ cleanup()
     RoadTest::cleanup();
 }
 
+// Test QhullFacetSet and QhullSet.
+// Use QhullRidgeSet to test methods overloaded by QhullFacetSet
+
 void QhullSet_test::
 t_qhullsetbase()
 {
     RboxPoints rcube("c");
     {
-        Qhull q(rcube,"Qt QR0");  // triangulation of rotated unit cube
+        Qhull q(rcube,"QR0");  // triangulation of rotated unit cube
         // Fake an empty set.  Default constructor not defined.  No memory allocation.
         QhullFacet f4 = q.beginFacet();
         QhullFacetSet fs = f4.neighborFacets();
-        fs.defineAs(q.qhullQh()->other_points);
+        fs.defineAs(q.qhullQh()->other_points); // Force an empty set
         QVERIFY(fs.isEmpty());
         QVERIFY(fs.empty());
         QCOMPARE(fs.count(), 0);
@@ -67,11 +71,22 @@ t_qhullsetbase()
         QCOMPARE(fs.begin(), fs.end()); // beginPointer(), endPointer()
         QVERIFY(QhullSetBase::isEmpty(fs.getSetT()));
 
-        QCOMPARE(q.facetCount(), 12);
+        QhullRidgeSet rs = f4.ridges();
+        QVERIFY(!rs.isEmpty());
+        QVERIFY(!rs.empty());
+        QCOMPARE(rs.count(), 4);
+        QCOMPARE(rs.size(), 4u);
+        QVERIFY(rs.begin()!=rs.end());
+        QVERIFY(!QhullSetBase::isEmpty(rs.getSetT()));
+        QhullRidgeSet rs2= rs; // copy constructor
+        // rs= rs2; // disabled.  Would not copy ridges
+        QCOMPARE(rs2, rs);
+
+        QCOMPARE(q.facetCount(), 6);
         QhullFacet f = q.beginFacet();
         QhullFacetSet fs2 = f.neighborFacets();
-        QCOMPARE(fs2.count(), 3);
-        QCOMPARE(fs2.size(), 3u);
+        QCOMPARE(fs2.count(), 4);
+        QCOMPARE(fs2.size(), 4u);
         QVERIFY(!fs2.isEmpty());
         QVERIFY(!QhullSetBase::isEmpty(fs2.getSetT()));
         QVERIFY(!fs2.empty());
@@ -82,7 +97,7 @@ t_qhullsetbase()
         QCOMPARE(fs[1], fs2[1]); // elementPointer
         QhullFacetSet fs3(fs2);
         QVERIFY(fs3==fs);
-        // fs= fs2; // private (compiler error)
+        // fs= fs2; // disabled.  Would not copy facets
         QhullFacetSet fs4= fs2; // copy constructor
         QVERIFY(fs4==fs2);
     }
@@ -95,10 +110,25 @@ t_convert()
 {
     RboxPoints rcube("c");
     {
-        Qhull q(rcube,"Qt QR0");  // triangulation of rotated unit cube
-        QCOMPARE(q.facetCount(), 12);
-        QhullFacet f = q.beginFacet();
-        QhullFacetSet fs = f.neighborFacets();
+        Qhull q(rcube,"QR0");  // rotated unit cube
+        QhullFacet f= q.firstFacet();
+        f= f.next();
+        QhullRidgeSet rs= f.ridges();
+        QCOMPARE(rs.count(),4);
+        std::vector<QhullRidge> rv= rs.toStdVector();
+        QCOMPARE(rv.size(), 4u);
+        QList<QhullRidge> rv2= rs.toQList();
+        QCOMPARE(rv2.size(), 4);
+        std::vector<QhullRidge>::iterator i= rv.begin();
+        foreach(QhullRidge r, rv2){  // Qt only
+            QhullRidge r2= *i++;
+            QCOMPARE(r, r2);
+        }
+
+        Qhull q2(rcube,"Qt QR0");  // triangulation of rotated unit cube
+        QCOMPARE(q2.facetCount(), 12);
+        QhullFacet f2 = q2.beginFacet();
+        QhullFacetSet fs = f2.neighborFacets();
         QCOMPARE(fs.size(), 3U);
         std::vector<QhullFacet> vs= fs.toStdVector();
         QCOMPARE(vs.size(), fs.size());
@@ -386,14 +416,18 @@ t_io()
     RboxPoints rcube("c");
     Qhull q(rcube,"QR0");  // rotated unit cube
     // Fake an empty set.  Default constructor not defined.  No memory allocation.
-    QhullFacet f = q.beginFacet();
-    QhullFacetSet fs = f.neighborFacets();
+    QhullFacet f= q.beginFacet();
+    QhullFacetSet fs= f.neighborFacets();
     fs.defineAs(q.qhullQh()->other_points);
     cout << "INFO:     empty set" << fs << std::endl;
-    QhullFacet f2 = q.beginFacet();
-    QhullFacetSet fs2 = f2.neighborFacets();
-    cout << "INFO:   " << fs2 << std::endl;
-    //FIXUP do not use QhullFacetSet to test set
+    QhullFacet f2= q.beginFacet();
+    QhullFacetSet fs2= f2.neighborFacets();
+    cout << "INFO:   Neighboring facets\n";
+    cout << fs2 << std::endl;
+
+    QhullRidgeSet rs= f.ridges();
+    cout << "INFO:   Ridges for a facet\n";
+    cout << rs << std::endl;
 }//t_io
 
 }//namespace orgQhull
diff --git a/cpp/qhulltest/Qhull_test.cpp b/cpp/qhulltest/Qhull_test.cpp
index aa4530f..de286c1 100644
--- a/cpp/qhulltest/Qhull_test.cpp
+++ b/cpp/qhulltest/Qhull_test.cpp
@@ -1,8 +1,8 @@
 /****************************************************************************
 **
 ** Copyright (C) 2008-2010 C.B. Barber. All rights reserved.
-** $Id: //product/qhull/main/rel/cpp/qhulltest/Qhull_test.cpp#37 $$Change: 1164 $
-** $DateTime: 2010/01/07 21:52:00 $$Author: bbarber $
+** $Id: //product/qhull/main/rel/cpp/qhulltest/Qhull_test.cpp#38 $$Change: 1179 $
+** $DateTime: 2010/01/12 19:53:15 $$Author: bbarber $
 **
 ****************************************************************************/
 
@@ -137,11 +137,11 @@ t_message()
             const char *s= e.what();
             cout << "INFO   : Caught " << s;
             QCOMPARE(QString::fromStdString(s).left(6), QString("QH6029"));
-            // Cleared when copied to QhullError
+            // FIXUP QH10025 -- review decision to clearQhullMessage at QhullError()            // Cleared when copied to QhullError
             QVERIFY(!q.hasQhullMessage());
             // QCOMPARE(q.qhullMessage(), QString::fromStdString(s).remove(0, 7));
             // QCOMPARE(q.qhullStatus(), 6029);
-            q.clearQhullMessage();  // FIXUP -- review decision to clearQhullMessage at QhullError()
+            q.clearQhullMessage();  
             QVERIFY(!q.hasQhullMessage());
         }
         q.appendQhullMessage("Append 1");
@@ -300,7 +300,7 @@ t_foreach()
         QCOMPARE(ps.count(), 8);
         QhullPointSet ps2= q.otherPoints();
         QCOMPARE(ps2.count(), 0);
-        // ps2= q.otherPoints(); //FIXUP disabled OK?
+        // ps2= q.otherPoints(); //disabled, would not copy the points 
         QCOMPARE(q.facetCount(), 6);
         QCOMPARE(q.vertexCount(), 8);
         coordT *c= q.pointCoordinateBegin(); // of q.points()
diff --git a/cpp/qhulltest/qhulltest.cpp b/cpp/qhulltest/qhulltest.cpp
index e68ffcb..753643c 100644
--- a/cpp/qhulltest/qhulltest.cpp
+++ b/cpp/qhulltest/qhulltest.cpp
@@ -1,8 +1,8 @@
 /****************************************************************************
 **
 ** Copyright (C) 2008-2010 C.B. Barber. All rights reserved.
-** $Id: //product/qhull/main/rel/cpp/qhulltest/qhulltest.cpp#54 $$Change: 1164 $
-** $DateTime: 2010/01/07 21:52:00 $$Author: bbarber $
+** $Id: //product/qhull/main/rel/cpp/qhulltest/qhulltest.cpp#55 $$Change: 1179 $
+** $DateTime: 2010/01/12 19:53:15 $$Author: bbarber $
 **
 ****************************************************************************/
 
@@ -22,7 +22,7 @@ namespace orgQhull {
 
 void addQhullTests(QStringList &args)
 {
-    TESTadd_(add_PointCoordinates_test); //copy
+    TESTadd_(add_QhullSet_test); //copy
 
     if(args.contains("--all")){
         args.removeAll("--all");
diff --git a/cpp/road/RoadError.h b/cpp/road/RoadError.h
index 795afe0..b8c1f7b 100644
--- a/cpp/road/RoadError.h
+++ b/cpp/road/RoadError.h
@@ -1,8 +1,8 @@
 /****************************************************************************
 **
 ** Copyright (C) 2008-2010 C.B. Barber. All rights reserved.
-** $Id: //product/qhull/main/rel/cpp/road/RoadError.h#21 $$Change: 1167 $
-** $DateTime: 2010/01/08 19:03:17 $$Author: bbarber $
+** $Id: //product/qhull/main/rel/cpp/road/RoadError.h#22 $$Change: 1179 $
+** $DateTime: 2010/01/12 19:53:15 $$Author: bbarber $
 **
 ****************************************************************************/
 
@@ -70,7 +70,7 @@ public:
 #//GetSet
     bool                defined() const { return log_event.defined(); }
     int                 errorCode() const { return error_code; };
-   // FIXUP QH10000 should RoadError provide errorMessage().  Currently what()
+   // FIXUP QH10021 should RoadError provide errorMessage().  Currently what()
     RoadLogEvent        roadLogEvent() const { return log_event; };
 
 #//Update
diff --git a/html/qh-get.htm b/html/qh-get.htm
index 60ff4f5..dbe0b77 100644
--- a/html/qh-get.htm
+++ b/html/qh-get.htm
@@ -71,23 +71,11 @@ width="100" height="100"></a> Qhull Downloads</h1>
 
    <!---
 
-    <li><a href=http://savannah.nongnu.org/files/?group=qhull>Download: Qhull 2002.1 for Unix</a>
-
-        <p>Includes documentation, source files, and a configure Makefile.
-        Includes Debian configuration files.  Includes downloads of Qhull's current and previous
-        versions.</p>
-
-        <p>B. Pearlmutter created a
+    <li>B. Pearlmutter created a
 <a href=http://packages.debian.org/stable/math/qhull-bin.html>Debian build</a> of Qhull 3.1
 and upgraded it to 2002.1.
     </li>
 
-    <li><a href=http://savannah.nongnu.org/projects/qhull/>Qhull@Savannah</a>
-        <p>Type: CVS repository</b>
-
-        <p>CVS repositiory of Qhull sources, documentation, and Makefiles.  No longer active.  Use gitorious instead.
-        </p>
-    </li>
     <li><a href="http://www.qhull.org/download/qhull-2003.1-1mdk.i686.rpm">Download:
         Qhull version 2003.1 i686 rpm</a> (670K) <p>Type: rpm build for Mandrake 9.2 and RedHat
                 [<a href="http://www.qhull.org/download/qhull.spec">qhull.spec</a>]</p>
@@ -95,13 +83,12 @@ and upgraded it to 2002.1.
         <p>For other Linux systems, use the <a href="http://www.qhull.org/download/qhull-2003.1-1mdk.src.rpm">src rpm</a> [L. Mazet]
     </li>
 
-
     <li><a href="http://packages.debian.org/search?keywords=qhull">Download:
                 Qhull 2003.1 for Debian</a>
                 <p>Type: Debian packages
         <p>Includes documentation, source files, and previous distributions [R. Laboissiere].</p>
         </li>
-        -->
+    -->
 
     <li><a href=http://www6.uniovi.es/ftp/pub/mirrors/geom.umn.edu/software/ghindex.html>Spanish
             mirror site</a> <p>Download Qhull's
diff --git a/html/qhull.man b/html/qhull.man
index 908782b..6db5fb8 100644
--- a/html/qhull.man
+++ b/html/qhull.man
@@ -14,7 +14,7 @@
 .\"
 .TH qhull 1 "2003/12/30" "Geometry Center"
 .SH NAME
-qhull \- convex hull, Delaunay triangulation, Voronoi diagram, 
+qhull \- convex hull, Delaunay triangulation, Voronoi diagram,
 halfspace intersection about a point, hull volume, facet area
 .SH SYNOPSIS
 .nf
@@ -22,7 +22,7 @@ qhull- compute convex hulls and related structures
     input (stdin): dimension, #points, point coordinates
     first comment (non-numeric) is listed in the summary
     halfspace: use dim plus one with offsets after coefficients
-    
+
 options (qh-quick.htm):
     d      - Delaunay triangulation by lifting points to a paraboloid
     v      - Voronoi diagram via the Delaunay triangulation
@@ -33,7 +33,7 @@ options (qh-quick.htm):
     QJ     - Joggle the input to avoid precision problems
     .      - concise list of all options
     -      - one-line description of all options
-    
+
 Output options (subset):
     FA     - compute total area and volume
     Fx     - extreme points (convex hull vertices)
@@ -48,7 +48,7 @@ Output options (subset):
     Tv     - verify result: structure, convexity, and point inclusion
     p      - vertex coordinates (centers for Voronoi)
     i      - vertices incident to each facet
-    
+
 example:
     rbox 1000 s | qhull Tv s FA
 .fi
@@ -56,16 +56,16 @@ example:
  - html manual:    index.htm
  - installation:   README.txt
  - see also:       COPYING.txt, REGISTER.txt, Changes.txt
- - WWW:  <http://www.qhull.org>
- - CVS:  <http://savannah.nongnu.org/projects/qhull/>
- - mirror: <http://www6.uniovi.es/ftp/pub/mirrors/geom.umn.edu/software/ghindex.html>
- - news: <http://www.qhull.org/news>
- - Geomview:  <http://www.geomview.org>
+ - WWW:            <http://www.qhull.org>
+ - GIT:            <git@gitorious.org:qhull/qhull.git>
+ - mirror:         <http://www6.uniovi.es/ftp/pub/mirrors/geom.umn.edu/software/ghindex.html>
+ - news:           <http://www.qhull.org/news>
+ - Geomview:       <http://www.geomview.org>
  - news group:     <news:comp.graphics.algorithms>
- - FAQ:       <http://exaflop.org/docs/cgafaq/cga6.html>
+ - FAQ:            <http://exaflop.org/docs/cgafaq/cga6.html>
  - email:          qhull@qhull.org
  - bug reports:    qhull_bug@qhull.org
- 
+
 The sections are:
  - INTRODUCTION
  - DESCRIPTION, a description of Qhull
@@ -90,10 +90,10 @@ any mismatches with Qhull's html manual (index.htm).
 .PP
 .SH INTRODUCTION
 Qhull is a general dimension code for computing convex hulls, Delaunay
-triangulations, Voronoi diagram, furthest\[hy]site Voronoi diagram, 
-furthest\[hy]site Delaunay triangulations, and 
-halfspace intersections about a point.  It implements the Quickhull algorithm for 
-computing the convex hull.  Qhull handles round\[hy]off errors from floating 
+triangulations, Voronoi diagram, furthest\[hy]site Voronoi diagram,
+furthest\[hy]site Delaunay triangulations, and
+halfspace intersections about a point.  It implements the Quickhull algorithm for
+computing the convex hull.  Qhull handles round\[hy]off errors from floating
 point arithmetic.  It can approximate a convex hull.
 
 The program includes options for hull volume, facet area, partial hulls,
@@ -107,7 +107,7 @@ The format of input is the following: first line contains the dimension,
 second line contains the number of input points, and point coordinates follow.
 The dimension and number of points can be reversed.
 Comments and line breaks are ignored.  A comment starts with a
-non\[hy]numeric character and continues to the end of line.  The first comment 
+non\[hy]numeric character and continues to the end of line.  The first comment
 is reported in summaries and statistics.
 Error reporting is
 better if there is one point per line.
@@ -118,8 +118,8 @@ other output formats.
 Qhull implements the Quickhull algorithm for convex hull. This algorithm combines
 the 2\[hy]d Quickhull algorithm with the n\[hy]d beneath\[hy]beyond algorithm
 [c.f., Preparata & Shamos '85].
-It is similar to the randomized algorithms of Clarkson and 
-others [Clarkson et al. '93].  The main 
+It is similar to the randomized algorithms of Clarkson and
+others [Clarkson et al. '93].  The main
 advantages of Quickhull are output sensitive performance, reduced
 space requirements, and automatic handling of precision problems.
 .PP
@@ -127,26 +127,26 @@ The data structure produced by Qhull consists of vertices, ridges, and facets.
 A vertex is a point of the input set.  A ridge is a set of d vertices
 and two neighboring facets.  For example in 3\[hy]d, a ridge is an edge of the
 polyhedron.  A facet is a set of ridges, a set of neighboring facets, a set
-of incident vertices, and a hyperplane equation.  For simplicial facets, the 
-ridges are defined by the vertices and neighboring facets.  When Qhull 
+of incident vertices, and a hyperplane equation.  For simplicial facets, the
+ridges are defined by the vertices and neighboring facets.  When Qhull
 merges two facets, it produces a non\[hy]simplicial
-facet.  A non\[hy]simplicial facet has more than d neighbors and may share more than 
+facet.  A non\[hy]simplicial facet has more than d neighbors and may share more than
 one ridge with a neighbor.
 .PP
-.SH IMPRECISION 
+.SH IMPRECISION
 .PP
 Since Qhull uses floating point arithmetic, roundoff error may occur for each
 calculation.  This causes  problems
 for most geometric algorithms.
 .PP
-Qhull automatically sets option 'C\-0' in 2\[hy]d, 3\[hy]d, and 4\[hy]d, or 
-option 'Qx' in 5\[hy]d and higher.  These options handle precision problems 
+Qhull automatically sets option 'C\-0' in 2\[hy]d, 3\[hy]d, and 4\[hy]d, or
+option 'Qx' in 5\[hy]d and higher.  These options handle precision problems
 by merging facets.  Alternatively, use option 'QJ' to joggle the
 input.
 .PP
 With 'C\-0', Qhull merges non\[hy]convex
 facets while constructing the hull. The remaining facets are
-clearly convex. With 'Qx', Qhull merges 
+clearly convex. With 'Qx', Qhull merges
 coplanar horizon facets, flipped facets, concave facets and
 duplicated ridges.  It merges coplanar facets after constructing
 the hull.
@@ -154,12 +154,12 @@ With 'Qx', coplanar points may be missed, but it
 appears to be unlikely.
 .PP
 To guarantee triangular output, joggle the input with option 'QJ'.  Facet
-merging will not occur. 
+merging will not occur.
 .SH OPTIONS
 .PP
 To get a list of the most important options, execute 'qhull' by itself.
-To get a complete list of options, 
-execute 'qhull \-'.  
+To get a complete list of options,
+execute 'qhull \-'.
 To get a complete, concise list of options, execute 'qhull .'.
 
 Options can be in any order.
@@ -176,33 +176,33 @@ Compute the convex hull of the input points.  Report a summary of
 the result.
 .TP
 d
-Compute the Delaunay triangulation by lifting the input points to a 
-paraboloid.  The 'o' option prints the input points and facets.  
-The 'QJ' option guarantees triangular output.  The 'Ft' 
+Compute the Delaunay triangulation by lifting the input points to a
+paraboloid.  The 'o' option prints the input points and facets.
+The 'QJ' option guarantees triangular output.  The 'Ft'
 option prints a triangulation.  It adds points (the centrums) to non\[hy]simplicial
-facets.  
+facets.
 .TP
 v
-Compute the Voronoi diagram from the Delaunay triangulation.  
-The 'p' option prints the Voronoi vertices.  
+Compute the Voronoi diagram from the Delaunay triangulation.
+The 'p' option prints the Voronoi vertices.
 The 'o' option prints the Voronoi vertices and the
 vertices in each Voronoi region.  It lists regions in
 site ID order.
 The 'Fv' option prints each ridge of the Voronoi diagram.
 The first or zero'th vertex
-indicates the infinity vertex.  Its coordinates are 
+indicates the infinity vertex.  Its coordinates are
 qh_INFINITE (\-10.101).  It indicates unbounded Voronoi
 regions or degenerate Delaunay triangles.
 .TP
 Hn,n,...
-Compute halfspace intersection about [n,n,0,...].  
+Compute halfspace intersection about [n,n,0,...].
 The input is a set of halfspaces
 defined in the same format as 'n', 'Fo', and 'Fi'.
 Use 'Fp' to print the intersection points.  Use 'Fv'
 to list the intersection points for each halfspace.  The
 other output formats display the dual convex hull.
 
-The point [n,n,n,...] is a feasible point for the halfspaces, i.e.,   
+The point [n,n,n,...] is a feasible point for the halfspaces, i.e.,
 a point that is inside all
 of the halfspaces (Hx+b <= 0).  The default coordinate value is 0.
 
@@ -213,19 +213,19 @@ option produces a feasible point for a convex hull.
 .TP
 d Qu
 Compute the furthest\[hy]site Delaunay triangulation from the upper
-convex hull.  The 'o' option prints the input points and facets.  
+convex hull.  The 'o' option prints the input points and facets.
 The 'QJ' option guarantees triangular otuput.  You can also use 'Ft'
 to triangulate via the centrums of non\[hy]simplicial
-facets.  
+facets.
 .TP
 v Qu
 Compute the furthest\[hy]site Voronoi diagram.
-The 'p' option prints the Voronoi vertices.  
+The 'p' option prints the Voronoi vertices.
 The 'o' option prints the Voronoi vertices and the
 vertices in each Voronoi region.
 The 'Fv' option prints each ridge of the Voronoi diagram.
 The first or zero'th vertex
-indicates the infinity vertex at infinity.  Its coordinates are 
+indicates the infinity vertex at infinity.  Its coordinates are
 qh_INFINITE (\-10.101).  It indicates unbounded Voronoi regions
 and degenerate Delaunay triangles.
 .PP
@@ -237,7 +237,7 @@ Print out all facets and all fields of each facet.
 .TP
 G
 Output the hull in Geomview format.  For imprecise hulls,
-Geomview displays the inner and outer hull.  Geomview can also 
+Geomview displays the inner and outer hull.  Geomview can also
 display points, ridges, vertices, coplanar points, and
 facet intersections.  See below for a list of options.
 
@@ -246,14 +246,14 @@ corresponding paraboloid.  For halfspace intersection, 'G' displays the
 dual polytope.
 .TP
 i
-Output the incident vertices for each facet.  
+Output the incident vertices for each facet.
 Qhull prints the number of facets followed by the
-vertices of each facet.  One facet is printed per line.  The numbers 
+vertices of each facet.  One facet is printed per line.  The numbers
 are the 0\[hy]relative indices of the corresponding input points.
 The facets
-are oriented.  
+are oriented.
 
-In 4d and higher, 
+In 4d and higher,
 Qhull triangulates non\[hy]simplicial facets.  Each apex (the first vertex) is
 a created point that corresponds to the facet's centrum.  Its index is greater
 than the indices of the input points.  Each base
@@ -269,13 +269,13 @@ visualized by "Show[Graphics[list]] ". For 3\[hy]d objects the command is
 "Show[Graphics3D[list]]".
 .TP
 n
-Output the normal equation for each facet.  
+Output the normal equation for each facet.
 Qhull prints the dimension (plus one), the number of facets,
 and the normals for each facet.  The facet's offset follows its
 normal coefficients.
 .TP
 o
-Output the facets in OFF file format.  
+Output the facets in OFF file format.
 Qhull prints the dimension, number of points, number
 of facets, and number of ridges.  Then it prints the coordinates of
 the input points and the vertices for each facet.  Each facet is on
@@ -285,27 +285,27 @@ oriented in 2\[hy]d, 3\[hy]d, and in simplicial facets.
 
 For 2\[hy]d Voronoi diagrams,
 the vertices are sorted by adjacency, but not oriented.  In 3\[hy]d and higher,
-the Voronoi vertices are sorted by index.  
+the Voronoi vertices are sorted by index.
 See the 'v' option for more information.
 .TP
 p
-Output the coordinates of each vertex point.  
+Output the coordinates of each vertex point.
 Qhull prints the dimension, the number of points,
-and the coordinates for each vertex.  
+and the coordinates for each vertex.
 With the 'Gc' and 'Gi' options, it also prints coplanar
 and interior points.  For Voronoi diagrams, it prints the coordinates
-of each Voronoi vertex.  
+of each Voronoi vertex.
 .TP
 s
 Print a summary to stderr.  If no output options
-are specified at all, a summary goes to stdout.  The summary lists 
+are specified at all, a summary goes to stdout.  The summary lists
 the number of input points, the dimension, the number of vertices
-in the convex hull, the number of facets in the convex hull, the 
+in the convex hull, the number of facets in the convex hull, the
 number of good facets (if 'Pg'), and statistics.
 
-The last two statistics (if needed) measure the maximum distance 
+The last two statistics (if needed) measure the maximum distance
 from a point or vertex to a
-facet.  The number in parenthesis (e.g., 2.1x) is the ratio between the 
+facet.  The number in parenthesis (e.g., 2.1x) is the ratio between the
 maximum distance and the worst\[hy]case distance due to merging
 two simplicial facets.
 .PP
@@ -317,9 +317,9 @@ Maximum angle given as a cosine.  If the angle between a pair of facet
 normals
 is greater than n, Qhull merges one of the facets into a neighbor.
 If 'n' is negative, Qhull tests angles after adding
-each point to the hull (pre\[hy]merging).  
+each point to the hull (pre\[hy]merging).
 If 'n' is positive, Qhull tests angles after
-constructing the hull (post\[hy]merging).  
+constructing the hull (post\[hy]merging).
 Both pre\[hy] and post\[hy]merging can be defined.
 
 Option 'C0' or 'C\-0' is set if the corresponding 'Cn' or 'C\-n'
@@ -351,9 +351,9 @@ To use time as the random number seed, use option 'QR\-1'.
 Vn
 Minimum distance for a facet to be visible.
 A facet is visible if the distance from the point to the
-facet is greater than 'Vn'.  
+facet is greater than 'Vn'.
 
-Without merging, the default value for 'Vn' is the round\[hy]off error ('En'). 
+Without merging, the default value for 'Vn' is the round\[hy]off error ('En').
 With merging, the default value is the pre\[hy]merge centrum ('C\-n') in 2\[hy]d or
 3\[hy]d, or three times that in other dimensions.  If the outside width
 is specified ('Wn'), the maximum, default value for 'Vn' is 'Wn'.
@@ -364,7 +364,7 @@ default value is 'Vn'.
 .TP
 Wn
 Minimum outside width of the hull.  Points are added to the convex hull
-only if they are clearly outside of a facet.  A point is outside of a 
+only if they are clearly outside of a facet.  A point is outside of a
 facet if its distance to the facet is greater than 'Wn'.  The normal
 value for 'Wn' is 'En'.  If the user specifies pre\[hy]merging and
 does not set 'Wn', than 'Wn' is set
@@ -374,15 +374,15 @@ to the premerge 'Cn' and maxcoord*(1\-An).
 Additional input/output formats
 .TP
 Fa
-Print area for each facet.  
+Print area for each facet.
 For Delaunay triangulations, the area is the area of the triangle.
-For Voronoi diagrams, the area is the area of the dual facet.   
+For Voronoi diagrams, the area is the area of the dual facet.
 Use 'PAn' for printing the n largest facets, and option 'PFn' for
 printing facets larger than 'n'.
 
 The area for non\[hy]simplicial facets is the sum of the
 areas for each ridge to the centrum.   Vertices far below
-the facet's hyperplane are ignored.  
+the facet's hyperplane are ignored.
 The reported area may be significantly less than the actual area.
 .TP
 FA
@@ -391,20 +391,20 @@ for non\[hy]simplicial facets (see 'Fa').
 .TP
 Fc
 Print coplanar points for each facet.  The output starts with the
-number of facets.  Then each facet is printed one per line.  Each line 
-is the number of coplanar points followed by the point ids. 
+number of facets.  Then each facet is printed one per line.  Each line
+is the number of coplanar points followed by the point ids.
 Option 'Qi' includes the interior points.  Each coplanar point (interior point) is
-assigned to the facet it is furthest above (resp., least below). 
+assigned to the facet it is furthest above (resp., least below).
 .TP
 FC
 Print centrums for each facet.  The output starts with the
-dimension followed by the number of facets.  
+dimension followed by the number of facets.
 Then each facet centrum is printed, one per line.
 .TP
 Fd
 Read input in cdd format with homogeneous points.
 The input starts with comments.  The first comment is reported in
-the summary.  
+the summary.
 Data starts after a "begin" line.  The next line is the number of points
 followed by the dimension+1 and "real" or "integer".  Then the points
 are listed  with a leading "1" or "1.0".  The data ends with an "end" line.
@@ -419,7 +419,7 @@ The first line is the command line that invoked Qhull.
 Data starts with a "begin" line.  The next line is the number of normals or points
 followed by the dimension+1 and "real".  Then the normals or points
 are listed  with the offset before the coefficients.  The offset for points is
-1.0.  The offset for normals has the opposite sign.  
+1.0.  The offset for normals has the opposite sign.
 The data ends with an "end" line.
 .TP
 FF
@@ -429,15 +429,15 @@ Fi
 Print inner planes for each facet.  The inner plane is below all vertices.
 .TP
 Fi
-Print separating hyperplanes for bounded, inner regions of the Voronoi 
+Print separating hyperplanes for bounded, inner regions of the Voronoi
 diagram.  The first line is the number
 of ridges.  Then each hyperplane is printed, one per line.  A line starts
-with the number of indices and floats.  The first pair lists 
+with the number of indices and floats.  The first pair lists
 adjacent input
 sites, the next d floats are the normalized coefficients for the hyperplane,
 and the last float is the offset.  The hyperplane is oriented toward 'QVn'
 (if defined), or the first input site of the pair.  Use 'Tv' to
-verify that the hyperplanes are perpendicular bisectors.  Use 'Fo' for 
+verify that the hyperplanes are perpendicular bisectors.  Use 'Fo' for
 unbounded regions, and 'Fv' for the corresponding Voronoi vertices.
 .TP
 FI
@@ -454,19 +454,19 @@ convex hulls and for 2\[hy]d Delaunay triangulations.   Qhull produces a '.mpl'
 file for displaying with display3d().
 .TP
 Fn
-Print neighbors for each facet.  The output starts with the number of facets.  
-Then each facet is printed one per line.  Each line 
+Print neighbors for each facet.  The output starts with the number of facets.
+Then each facet is printed one per line.  Each line
 is the number of neighbors followed by an index for each neighbor.  The indices
-match the other facet output formats.  
+match the other facet output formats.
 
 A negative index indicates an unprinted
 facet due to printing only good facets ('Pg').  It is the negation of the facet's
-ID (option 'FI').   
+ID (option 'FI').
 For example, negative indices are used for facets
 "at infinity" in the Delaunay triangulation.
 .TP
 FN
-Print vertex neighbors or coplanar facet for each point.  
+Print vertex neighbors or coplanar facet for each point.
 The first line is the number
 of points.  Then each point is printed, one per line.  If the
 point is coplanar, the line is "1" followed by the facet's ID.
@@ -476,19 +476,19 @@ Otherwise, each line is the number of
 neighbors followed by the corresponding facet indices (see 'Fn').
 .TP
 Fo
-Print outer planes for each facet in the same format as 'n'.  
+Print outer planes for each facet in the same format as 'n'.
 The outer plane is above all points.
 .TP
 Fo
-Print separating hyperplanes for unbounded, outer regions of the Voronoi 
+Print separating hyperplanes for unbounded, outer regions of the Voronoi
 diagram.  The first line is the number
 of ridges.  Then each hyperplane is printed, one per line.  A line starts
-with the number of indices and floats.  The first pair lists 
+with the number of indices and floats.  The first pair lists
 adjacent input
 sites, the next d floats are the normalized coefficients for the hyperplane,
 and the last float is the offset.  The hyperplane is oriented toward 'QVn'
 (if defined), or the first input site of the pair.  Use 'Tv' to
-verify that the hyperplanes are perpendicular bisectors.  Use 'Fi' for 
+verify that the hyperplanes are perpendicular bisectors.  Use 'Fi' for
 bounded regions, and 'Fv' for the corresponding Voronoi vertices.
 .TP
 FO
@@ -509,26 +509,26 @@ FQ
 Print command used for qhull and input.
 .TP
 Fs
-Print a summary.  The first line consists of the number of integers ("8"), 
-followed by the dimension, the number of points, the number of vertices, 
+Print a summary.  The first line consists of the number of integers ("8"),
+followed by the dimension, the number of points, the number of vertices,
 the number of facets, the number of vertices selected for output, the
 number of facets selected for output, the number of coplanar points selected
 for output, number of simplicial, unmerged facets in output
 
 The second line consists of the number of reals ("2"),
-followed by the maxmimum offset to an outer plane and and minimum offset to 
+followed by the maxmimum offset to an outer plane and and minimum offset to
 an inner plane.  Roundoff is included.  Later
 versions of Qhull may produce additional integers or reals.
 .TP
 FS
-Print the size of the hull.  The first line consists of the number of integers ("0").  
+Print the size of the hull.  The first line consists of the number of integers ("0").
 The second line consists of the number of reals ("2"),
-followed by the total facet area, and the total volume.  
+followed by the total facet area, and the total volume.
 Later
 versions of Qhull may produce additional integers or reals.
 
 The total volume measures the volume
-of the intersection of the halfspaces defined by each facet.   
+of the intersection of the halfspaces defined by each facet.
 Both area and volume are
 approximations for non\[hy]simplicial facets.  See option 'Fa'.
 .TP
@@ -554,8 +554,8 @@ the vertex\[hy]at\[hy]infinity (i.e., an unbounded ray).  In 3\[hy]d, the vertic
 are listed in order.  See 'Fi' and 'Fo' for separating hyperplanes.
 .TP
 FV
-Print average vertex.  The average vertex is a feasible point 
-for halfspace intersection. 
+Print average vertex.  The average vertex is a feasible point
+for halfspace intersection.
 .TP
 Fx
 List extreme points (vertices) of the convex hull.  The first line
@@ -571,9 +571,9 @@ Geomview options
 G
 Produce a file for viewing with Geomview.  Without other options,
 Qhull displays edges in 2\[hy]d, outer planes in 3\[hy]d, and ridges in 4\[hy]d.
-A ridge can be 
+A ridge can be
 explicit or implicit.  An explicit ridge is a dim\-1 dimensional simplex
-between two facets.  
+between two facets.
 In 4\[hy]d, the explicit ridges are triangles.
 When displaying a ridge in 4\[hy]d, Qhull projects the ridge's vertices to
 one of its facets' hyperplanes.
@@ -586,11 +586,11 @@ Display all input points as dots.
 Gc
 Display the centrum for each facet in 3\[hy]d.  The centrum is defined by a
 green radius sitting on a blue plane.  The plane corresponds to the
-facet's hyperplane.  
+facet's hyperplane.
 The radius is defined by 'C\-n' or 'Cn'.
 .TP
 GDn
-Drop dimension n in 3\[hy]d or 4\[hy]d.  The result is a 2\[hy]d or 3\[hy]d object.  
+Drop dimension n in 3\[hy]d or 4\[hy]d.  The result is a 2\[hy]d or 3\[hy]d object.
 .TP
 Gh
 Display hyperplane intersections in 3\[hy]d and 4\[hy]d.   In 3\[hy]d, the
@@ -605,7 +605,7 @@ The inner plane's color is the opposite (1\-r,1\-g,1\-b) of the outer
 plane.  Its edges are determined by the vertices.
 .TP
 Gn
-Do not display inner or outer planes.  By default, 
+Do not display inner or outer planes.  By default,
 Geomview displays the precise plane (no merging) or both
 inner and output planes (merging).  Under merging, Geomview does
 not display the inner plane if the
@@ -614,14 +614,14 @@ the difference between inner and outer is too small.
 Go
 Display outer planes in 2\[hy]d and 3\[hy]d.  The outer plane of a facet
 is above all input points.  It is parallel to the facet's hyperplane.
-Its color is determined by the facet's normal, and its 
+Its color is determined by the facet's normal, and its
 edges are determined by the vertices.
 .TP
 Gp
 Display coplanar points and vertices as radii.  A radius defines a ball
-which corresponds to the imprecision of the point.  The imprecision is 
+which corresponds to the imprecision of the point.  The imprecision is
 the maximum of the roundoff error, the centrum radius, and maxcoord *
-(1\-An).  It is at least 1/20'th of the maximum coordinate, 
+(1\-An).  It is at least 1/20'th of the maximum coordinate,
 and ignores post\[hy]merging if pre\[hy]merging is done.
 .TP
 Gr
@@ -641,8 +641,8 @@ the imprecision of the data.  See 'Gp' for determining the radius.
 Print options
 .TP
 PAn
-Only the n largest facets are marked good for printing.  
-Unless 'PG' is set, 'Pg' is automatically set. 
+Only the n largest facets are marked good for printing.
+Unless 'PG' is set, 'Pg' is automatically set.
 .TP
 Pdk:n
 Drop facet from output if normal[k] <= n.  The option 'Pdk' uses the
@@ -653,8 +653,8 @@ Drop facet from output if normal[k] >= n.  The option 'PDk' uses the
 default value of 0 for n.
 .TP
 PFn
-Only facets with area at least 'n' are marked good for printing.  
-Unless 'PG' is set, 'Pg' is automatically set. 
+Only facets with area at least 'n' are marked good for printing.
+Unless 'PG' is set, 'Pg' is automatically set.
 .TP
 Pg
 Print only good facets.  A good facet is either visible from a point
@@ -667,13 +667,13 @@ Print neighbors of good facets.
 .TP
 PMn
 Only the n facets with the most merges are marked good for printing.
-Unless 'PG' is set, 'Pg' is automatically set. 
+Unless 'PG' is set, 'Pg' is automatically set.
 .TP
 Po
 Force output despite precision problems.  Verify ('Tv') does not check
 coplanar points.
-Flipped facets are reported and concave facets are counted.  
-If 'Po' is used, points are not 
+Flipped facets are reported and concave facets are counted.
+If 'Po' is used, points are not
 partitioned into flipped facets and a flipped facet is always visible
 to a point.
 Also, if an error occurs before the completion of Qhull and tracing is
@@ -687,7 +687,7 @@ Do not report precision problems.
 Qhull control options
 .TP
 Qbk:0Bk:0
-Drop dimension k from the input points.  This allows the user to 
+Drop dimension k from the input points.  This allows the user to
 take convex hulls of sub\[hy]dimensional objects.  It happens before
 the Delaunay and Voronoi transformation.
 .TP
@@ -697,7 +697,7 @@ bound will be \-0.5 and the upper bound +0.5 in all dimensions.
 For Delaunay and
 Voronoi diagrams, scaling happens after projection to the paraboloid.
 Under precise
-arithmetic, scaling does not change the topology of the convex hull.  
+arithmetic, scaling does not change the topology of the convex hull.
 .TP
 Qbb
 Scale the last coordinate to [0, m] where m is the maximum absolute
@@ -705,38 +705,38 @@ value of the other coordinates.  For Delaunay and
 Voronoi diagrams, scaling happens after projection to the paraboloid.
 It reduces roundoff error for inputs with integer coordinates.
 Under precise
-arithmetic, scaling does not change the topology of the convex hull.  
+arithmetic, scaling does not change the topology of the convex hull.
 .TP
 Qbk:n
 Scale the k'th coordinate of the input points.  After scaling, the lower
-bound of the input points will be n.  'Qbk' scales to \-0.5.  
+bound of the input points will be n.  'Qbk' scales to \-0.5.
 .TP
 QBk:n
 Scale the k'th coordinate of the input points.  After scaling, the upper
 bound will be n.  'QBk' scales to +0.5.
 .TP
 Qc
-Keep coplanar points with the nearest facet.  Output 
-formats 'p', 'f', 'Gp', 'Fc', 'FN', and 'FP' will print the points.  
+Keep coplanar points with the nearest facet.  Output
+formats 'p', 'f', 'Gp', 'Fc', 'FN', and 'FP' will print the points.
 .TP
 Qf
 Partition points to the furthest outside facet.
 .TP
 Qg
-Only build good facets.  With the 'Qg' option, Qhull will only build 
+Only build good facets.  With the 'Qg' option, Qhull will only build
 those facets that it needs to determine the good facets in the output.
-See 'QGn', 'QVn', and 'PdD' for defining good facets, and 'Pg' and 'PG' 
+See 'QGn', 'QVn', and 'PdD' for defining good facets, and 'Pg' and 'PG'
 for printing good facets and their neighbors.
 .TP
 QGn
 A facet is good (see 'Qg' and 'Pg') if it is visible from point n.  If n < 0, a facet is
 good if it is not visible from point n.  Point n is not added to the
-hull (unless 'TCn' or 'TPn').  
+hull (unless 'TCn' or 'TPn').
 With rbox, use the 'Pn,m,r' option to define your point; it
-will be point 0 (QG0).  
+will be point 0 (QG0).
 .TP
 Qi
-Keep interior points with the nearest facet.  
+Keep interior points with the nearest facet.
 Output formats 'p', 'f', 'Gp', 'FN', 'FP', and 'Fc' will print the points.
 .TP
 QJn
@@ -752,7 +752,7 @@ Qm
 Only process points that would otherwise increase max_outside.  Other
 points are treated as coplanar or interior points.
 .TP
-Qr 
+Qr
 Process random outside points instead of furthest ones.  This makes
 Qhull equivalent to the randomized incremental algorithms.  CPU time
 is not reported since the randomization is inefficient.
@@ -788,7 +788,7 @@ are not performed.  Concavity testing is delayed until a merge occurs.
 
 After
 the hull is built, all coplanar merges are performed (defined by 'C\-n'
-and 'A\-n'), then post\[hy]merges are performed 
+and 'A\-n'), then post\[hy]merges are performed
 (defined by 'Cn' and 'An').
 .TP
 Qz
@@ -796,15 +796,15 @@ Add a point "at infinity" that is above the paraboloid for Delaunay triangulatio
 and Voronoi diagrams.  This reduces precision problems and allows the triangulation
 of cospherical points.
 .PP
-.TP 
+.TP
 Qhull experiments and speedups
 .TP
 Q0
-Turn off pre\[hy]merging as a default option.  
-With 'Q0'/'Qx' and without explicit pre\[hy]merge options, Qhull 
+Turn off pre\[hy]merging as a default option.
+With 'Q0'/'Qx' and without explicit pre\[hy]merge options, Qhull
 ignores precision issues while constructing the convex hull.  This
 may lead to precision errors.  If so, a descriptive warning is
-generated.  
+generated.
 .TP
 Q1
 With 'Q1', Qhull sorts merges by type (coplanar, angle coplanar, concave)
@@ -857,7 +857,7 @@ algorithm.  'T5' includes information about memory allocation and
 Gaussian elimination.
 .TP
 Ta
-Annotate output with codes that identify the 
+Annotate output with codes that identify the
 corresponding qh_fprintf() statement.
 .TP
 Tc
@@ -866,12 +866,12 @@ errors.
 .TP
 TCn
 Stop Qhull after building the cone of new facets for point n.  The
-output for 'f' includes the cone and the old hull.  
+output for 'f' includes the cone and the old hull.
 See also 'TVn'.
 .TP
 TFn
 Report progress whenever more than n facets are created
-During post\[hy]merging, 'TFn' 
+During post\[hy]merging, 'TFn'
 reports progress after more than n/2 merges.
 .TP
 TI file
@@ -896,8 +896,8 @@ Collect statistics and print to stderr at the end of execution.
 .TP
 Tv
 Verify the convex hull.  This checks the topological structure, facet
-convexity, and point inclusion.  
-If precision problems occurred, facet convexity is tested whether or 
+convexity, and point inclusion.
+If precision problems occurred, facet convexity is tested whether or
 not 'Tv' is selected.
 Option 'Tv' does not check point inclusion if forcing output with 'Po',
 or if 'Q5' is set.
@@ -906,9 +906,9 @@ For point inclusion testing, Qhull verifies that all points are below
 all outer planes (facet\->maxoutside).  Point inclusion is exhaustive
 if merging or if the facet\[hy]point product is small enough;
 otherwise Qhull verifies each point with a directed
-search (qh_findbest).  
+search (qh_findbest).
 
-Point inclusion testing occurs after producing output.  It prints 
+Point inclusion testing occurs after producing output.  It prints
 a message to stderr unless option 'Pp' is used.  This
 allows the user to interrupt Qhull without changing the output.
 .TP
@@ -926,7 +926,7 @@ Tz
 Redirect stderr to stdout.
 .PP
 .SH BUGS
-Please report bugs to Brad Barber at qhull_bug@qhull.org.  
+Please report bugs to Brad Barber at qhull_bug@qhull.org.
 
 If Qhull does not compile, it is due to an incompatibility between your
 system and ours.  The first thing to check is that your compiler is
@@ -937,7 +937,7 @@ please send email since it might help others.
 If Qhull compiles but crashes on the test case (rbox D4), there's
 still incompatibility between your system and ours.  Typically it's
 been due to mem.c and memory alignment.  You can use qh_NOmem in mem.h
-to turn off memory management.  Please let us know if you figure out 
+to turn off memory management.  Please let us know if you figure out
 how to fix these problems.
 
 If you do find a problem, try to simplify it before reporting the
@@ -958,7 +958,7 @@ mention it in a paper, please send the reference and an abstract.
 If you would like to get Qhull announcements (e.g., a new version)
 and news (any bugs that get fixed, etc.), let us know and we will add you to
 our mailing list.  If you would like to communicate with other
-Qhull users, we will add you to the qhull_users alias.  
+Qhull users, we will add you to the qhull_users alias.
 For Internet news about geometric algorithms and convex hulls, look at
 comp.graphics.algorithms and sci.math.num\-analysis
 
@@ -971,7 +971,7 @@ Trans. on Mathematical Software, 22(4):469\[en]483, Dec. 1996.
 http://portal.acm.org/citation.cfm?doid=235815.235821
 http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.117.405
 
-Clarkson, K.L., K. Mehlhorn, and R. Seidel, "Four results on randomized 
+Clarkson, K.L., K. Mehlhorn, and R. Seidel, "Four results on randomized
 incremental construction," Computational Geometry: Theory and Applications,
 vol. 3, p. 185\[en]211, 1993.
 
@@ -983,7 +983,7 @@ Geometry, Springer\[hy]Verlag, New York, 1985.
 .nf
   C. Bradford Barber                    Hannu Huhdanpaa
   bradb@shore.net                       hannu@qhull.org
-  
+
  .fi
 
 .SH ACKNOWLEDGEMENTS
@@ -991,13 +991,13 @@ Geometry, Springer\[hy]Verlag, New York, 1985.
 A special thanks to Albert Marden, Victor Milenkovic, the Geometry Center,
 Harvard University, and Endocardial Solutions, Inc. for supporting this work.
 
-Qhull 1.0 and 2.0 were developed under National Science Foundation 
-grants NSF/DMS\[hy]8920161 and NSF\[hy]CCR\[hy]91\[hy]15793 750\[hy]7504.  David Dobkin 
-guided the original work at Princeton University.  
+Qhull 1.0 and 2.0 were developed under National Science Foundation
+grants NSF/DMS\[hy]8920161 and NSF\[hy]CCR\[hy]91\[hy]15793 750\[hy]7504.  David Dobkin
+guided the original work at Princeton University.
 If you find it useful, please let us know.
 
-The Geometry Center is supported by grant DMS\[hy]8920161 from the National 
-Science Foundation, by grant DOE/DE\[hy]FG02\[hy]92ER25137 from the Department 
+The Geometry Center is supported by grant DMS\[hy]8920161 from the National
+Science Foundation, by grant DOE/DE\[hy]FG02\[hy]92ER25137 from the Department
 of Energy, by the University of Minnesota, and by Minnesota Technology, Inc.
 
 Qhull is available from http://www.qhull.org
diff --git a/html/qhull.txt b/html/qhull.txt
index 3250d6d..5a54d2d 100644
--- a/html/qhull.txt
+++ b/html/qhull.txt
@@ -45,13 +45,13 @@ SYNOPSIS
         - html manual:    index.htm
         - installation:   README.txt
         - see also:       COPYING.txt, REGISTER.txt, Changes.txt
-        - WWW:  <http://www.qhull.org>
-        - CVS:  <http://savannah.nongnu.org/projects/qhull/>
-        - mirror: <http://www6.uniovi.es/ftp/pub/mirrors/geom.umn.edu/software/ghindex.html>
-        - news: <http://www.qhull.org/news>
-        - Geomview:  <http://www.geomview.org>
+        - WWW:            <http://www.qhull.org>
+        - GIT:            <git@gitorious.org:qhull/qhull.git>
+        - mirror:         <http://www6.uniovi.es/ftp/pub/mirrors/geom.umn.edu/software/ghindex.html>
+        - news:           <http://www.qhull.org/news>
+        - Geomview:       <http://www.geomview.org>
         - news group:     <news:comp.graphics.algorithms>
-        - FAQ:       <http://exaflop.org/docs/cgafaq/cga6.html>
+        - FAQ:            <http://exaflop.org/docs/cgafaq/cga6.html>
         - email:          qhull@qhull.org
         - bug reports:    qhull_bug@qhull.org
 
@@ -928,7 +928,7 @@ qhull(1)                                                 qhull(1)
 
        Qs     Search all points for the initial simplex.
 
-       Qt     Triangulated output.  Triangulate non-simplicial 
+       Qt     Triangulated output.  Triangulate non-simplicial
               facets.
 
        Qv     Test  vertex  neighbors  for  convexity after post-
@@ -1009,10 +1009,10 @@ qhull(1)                                                 qhull(1)
        Q9     With 'Q9', Qhull processes the furthest of all out-
               side sets at each iteration.
 
-       Q10    With 'Q10', Qhull does not use special processing 
+       Q10    With 'Q10', Qhull does not use special processing
               for narrow distributions.
 
-       Q11    With 'Q11', Qhull copies normals and recomputes 
+       Q11    With 'Q11', Qhull copies normals and recomputes
               centrums for tricoplanar facets.
 
        Trace options
@@ -1025,7 +1025,7 @@ qhull(1)                                                 qhull(1)
               includes  information  about  memory allocation and
               Gaussian elimination.
 
-       Ta     Annotate output with codes that identify the 
+       Ta     Annotate output with codes that identify the
               corresponding qh_fprintf() statement.
 
        Tc     Check frequently during execution.  This will catch
@@ -1040,7 +1040,7 @@ qhull(1)                                                 qhull(1)
               after more than n/2 merges.
 
        TI file
-              Input data from 'file'.  The filename may not include 
+              Input data from 'file'.  The filename may not include
                   spaces or quotes.
 
        TO file
@@ -1187,8 +1187,8 @@ ACKNOWLEDGEMENTS
        Geometry Center, Harvard University, and Endocardial Solu-
        tions, Inc. for supporting this work.
 
-       Qhull 1.0 and 2.0 were developed under National Science Foundation 
-       grants NSF/DMS-8920161 and NSF-CCR-91-15793 750-7504.  David Dobkin 
+       Qhull 1.0 and 2.0 were developed under National Science Foundation
+       grants NSF/DMS-8920161 and NSF-CCR-91-15793 750-7504.  David Dobkin
 
 
 
@@ -1201,9 +1201,9 @@ Geometry Center              2003/12/30                18
 qhull(1)                                                 qhull(1)
 
 
-       guided the original work at Princeton University.  If you find it 
+       guided the original work at Princeton University.  If you find it
        useful, please let us know.
-       
+
        The Geometry Center was supported by grant DMS-8920161 from the National
        Science Foundation, by grant DOE/DE-FG02-92ER25137 from the Department
        of Energy, by the University of Minnesota, and by Minnesota Technology, Inc.
diff --git a/project/libqhullcpp/libqhullcpp.pro b/project/libqhullcpp/libqhullcpp.pro
index 549272a..68364e1 100644
--- a/project/libqhullcpp/libqhullcpp.pro
+++ b/project/libqhullcpp/libqhullcpp.pro
@@ -23,9 +23,9 @@ QT -= gui
 MOC_DIR = ../../tmp/moc
 RCC_DIR = ../../tmp/rcc
 INCLUDEPATH = ../../cpp;../../cpp/road;../../tmp
-#FIXUP QMAKE_CXXFLAGS_DEBUG += -Wall -Wextra -Wshadow -Wcast-qual -Wwrite-strings
-#QMAKE_CXXFLAGS_DEBUG += -Wno-sign-conversion # Many size_t vs. int errors
-#QMAKE_CXXFLAGS_DEBUG += -Wconversion # no workaround for bit-field conversion errors
+QMAKE_CXXFLAGS_DEBUG += -Wall -Wextra -Wcast-qual -Wwrite-strings
+QMAKE_CXXFLAGS_DEBUG += -Wno-sign-conversion # Many size_t vs. int errors
+# QMAKE_CXXFLAGS_DEBUG += -Wconversion # no workaround for bit-field conversion errors
 
 VPATH = ../..
 SOURCES += cpp/Coordinates.cpp
diff --git a/src/Changes.txt b/src/Changes.txt
index ade8874..7b70e72 100644
--- a/src/Changes.txt
+++ b/src/Changes.txt
@@ -2,7 +2,7 @@
 .............This file lists all changes to qhull and rbox.....................
 
 To do for documentation
-- Qhull::addPoint().  Problems with qh_findbestfacet and otherpoints see 
+- Qhull::addPoint().  Problems with qh_findbestfacet and otherpoints see
    qh-code.htm#inc on-line construction with qh_addpoint()
 - How to handle 64-bit possible loss of data.  WARN64, ptr_intT, size_t/int
 - Show custom of qh_fprintf
@@ -13,7 +13,7 @@ To do for documentation
     errorIfAnotherUser
     ~QhullPoints() needs ownership of qh_qh
     Does !qh_pointer work?
-    When is qh_qh required?  Minimize the time. 
+    When is qh_qh required?  Minimize the time.
    qhmem, qhstat.ferr
    qhull_inuse==1 when qhull globals active [not useful?]
    rbox_inuse==1 when rbox globals active
@@ -89,17 +89,17 @@ To do
  - update FAQ and date.
  - Notify Wolfram, geom discussion list
  - Review Warn64
- - review all #pragma
- - review all FIXUP [^0-9]
- - Number the FIXUPS
  - clean up warnings for libqhullcpp
+ - rereview -Wconversion
  - get copy of unused
  - Review email archives for doc changes
+ - Add libqhull5 to Readme, Announce, download
+ - QtTestD4.dll did not include MSVCP80D.dll and MSVCR80D.dll
 
 ------------
 Need help
  - The C++ interface needs work.  Give it a try and make it better.
- - Set up debian build. 
+ - Set up debian build.
    Please keep debian files in config/ and project/debian/
    Branch 'debian' is from http://savannah.nongnu.org/cvs/?group=qhull
    project/debian needs updating for its new location.  It was at qhull's level.
@@ -108,11 +108,13 @@ Need help
  - Verify -fno-strict-aliasing needed for gcc 4.1, 4.2, and 4.3 (qset segfault)
 
 ------------
-Qhull next branch
+Qhull done
 
 - Add qt-qhull.cpp with Qt conditional code
 - Fix qhull.sln and project files for qh_QHpointer
 - Add libqhullp.proj
+- Reviewed #pragma
+- Reviewed FIXUP and assigned QH tags
 
 ------------
 qhull 2010.1 2010/01/10
@@ -138,13 +140,13 @@ Changes to source
 - user.h requires <time.h> for CLOCKS_PER_SEC
 - Move ostream<<QhullFacetList from inline to compiled.
 - Removed ConvexHull/ from git.  Not used.
- 
+
 ------------
 qhull 2009.1.1 2010/01/09
-- Patch release of 2009.1. 
+- Patch release of 2009.1.
   qh_gethash allowed a negative result, causing overwrite or segfault
   See git:qhull/project/patch/qhull-2003.1/poly.c-qh_gethash.patch
-  Compared results of q_test, q_eg, and q_egtest with patched poly.c, qhull-2003.1 
+  Compared results of q_test, q_eg, and q_egtest with patched poly.c, qhull-2003.1
 
 ------------
 qhull 2010.1 2010/01/07
@@ -153,28 +155,28 @@ qhull 2010.1 2010/01/07
 - Fix qh_pointid in case ptr_intT is unsigned
 
 qhull 2010.1 2010/01/06
-- Fixed serious bug in qh_gethash [poly.c] 
+- Fixed serious bug in qh_gethash [poly.c]
 - Documentation and build system are incomplete (see above)
 - First release of C++ interface [qh-code.htm]
-- Development moved to http://gitorious.org/qhull 
+- Development moved to http://gitorious.org/qhull
   git clone git@gitorious.org:qhull/qhull.git
-- Did not fix conformant tesselations for 'Qt'.  
+- Did not fix conformant tesselations for 'Qt'.
   For details, see http://www.qhull.org/news#bugs of May 2007 and Dec 2006.
 - Use g++ builds for Windows distribution (10% faster than msvc2005)
   Combined vcproj/ and qtproj/ into project/
   vcproj will be replaced by qmake generated files
- 
+
 ------------
 qhull 2010.0.3 2010/01/05
 Fixed bugs
-- 'QJn' (joggle): Fix qh.STOPcone in qh_build_withrestart().  It was not cleared. 
+- 'QJn' (joggle): Fix qh.STOPcone in qh_build_withrestart().  It was not cleared.
 - qh_initqhull_outputflags [global.c]: warn about Qc only if QHULLfinished, otherwise set if needed
 
 qhull 2010.0.2 2010/01/04
 
 Fixed bugs
-- qh_gethash [poly.c]: fix sign conversion.  
-    Previously, the result may be negative, leading to a segfault.  
+- qh_gethash [poly.c]: fix sign conversion.
+    Previously, the result may be negative, leading to a segfault.
     The bug is more likely with large address spaces
     Reviewed all uses of %(modulo) for remainder with negative arguments
 - Reviewed output of q_test and compared to results from 2003.1
@@ -207,7 +209,7 @@ Changes to qhull options and results
  - Prefix error messages and warnings with a message code (e.g., QH6012)
  - Fixed rbox ignoring flags that were not separated by spaces
  - Report all hidden options before exiting in qh_checkflags()
- - Defined qh_OPTIONline [user.h] as max length of option line ('FO') 
+ - Defined qh_OPTIONline [user.h] as max length of option line ('FO')
  - Report error if negative arguments to rbox 'G', 'L', 'Z'
  - Unknown rbox flag changed from a warning to an error
  - Set error status 4 qh_ERRmem if rbox runs out of memory
@@ -236,7 +238,7 @@ Bug fixes to C code:
  - Fixed mindist initialization if !testcentrum in io.c findbest_test [Ratcliff]
  - Fixed parentheses around warning for missing 'Qc' [qh_initqhull_outputflags]
  - Fixed rbox buffer overflow of 'command' when appending seedbuf
- - Fixed option string for 'rbox t t999'.  Although seed was correctly set to 999, 
+ - Fixed option string for 'rbox t t999'.  Although seed was correctly set to 999,
    a random seed was appended to the rbox comment (e.g., 'rbox t t999 t32343')
  - Fixed upper bound of sanity check for qh_RANDOMmax in qh_initqhull_globals()
 
@@ -275,7 +277,7 @@ Fixed g++ and devstudio warnings
    Retained int sizes for qset.h and mem.h.  Follows Qt convention
    and is easier to work with.  int can be 64-bits if 2 billion facets
  - Change literal strings to const char* [kwilliams]
- - Added type casts to SETfirst and SETsecond [amorilia+alphax] 
+ - Added type casts to SETfirst and SETsecond [amorilia+alphax]
  - getid_() returns an int [kwilliams]
  - Add missing const annotations [kwilliams]
  - Fixed 64-bit warnings (marked with "WARN64")
@@ -417,7 +419,7 @@ Changes to code:
 Changes to build
  - Makefile.txt works under cygwin
  - Added Make-config.sh to create a Debian build [R. Laboissiere]
- - Added .exe to Makefile.txt#clean.  
+ - Added .exe to Makefile.txt#clean.
  - In README, use -fno-strict-aliasing with gcc-2.95.1 [Karas, Krishnaswami]
  - Fixed chmod in Makefile.txt [B. Karas]
 
@@ -457,16 +459,16 @@ Changes to options
      For non-simplicial regions, 'Ft' does not satisify the Delaunay property.
  - If 'Po' or 'TVn', qhull checks outer planes.  Use 'Q5' to turn off.
  - If 'T4', print facet lists and check polygon after adding each point
- 
+
 Corrections to code
  - rbox: allow 'c' and 'd' with 's r', meshes, etc.
  - qh_findbest: redesigned as directed search. qh_findbesthorizon for coplanar
       qh_findbest is faster for many distributions
  - qh_findbestnew: redesigned to search horizon of coplanar best newfacets
-      needed for distributions with a sharp edge, 
+      needed for distributions with a sharp edge,
           e.g., rbox 1000 s Z1 G1e-13 | qhull Tv
  - qh_findbest/qh_findbestnew: search neighbors of better horizon facets
-      was needed for RBOX 1000 s Z1 G1e-13 t996564279 | qhull Tv  
+      was needed for RBOX 1000 s Z1 G1e-13 t996564279 | qhull Tv
       and RBOX 1000 s W1e-13 P0 t996547055 | QHULL d Qbb Qc Tv
  - qh_findbest with noupper: could return an upperdelaunay facet if dist>qh.MINoutside.
  - qh_findbestnew: allow facet->upperdelaunay if dist > qh.MINoutside
@@ -480,7 +482,7 @@ Changes to prompts, warnings, and statistics
  - For Delaunay & Voronoi, 's' reports deleted vertices due to facet merging.
    They were incorrectly reported as nearly incident points.
  - Warn if recompute centrum after constructing hull
- - Simplified narrow hull warning and print all digits of cosine.  
+ - Simplified narrow hull warning and print all digits of cosine.
      A narrow hull may lead to a point outside of the hull.
  - Print total vertices deleted instead of ave. per iteration (Zdelvertextot)
  - Improved tracing for qh_partitionpoint and qh_partitioncoplanar
@@ -492,7 +494,7 @@ Changes to documentation
  - README.txt: Added quickstart instructions for Visual C++
  - rbox: Added example of edge of narrow lens, rbox 1000 L100000 s G1e-6
  - Added cross references between options 'o' and 'p'.
- - qh-eg.html: added examples comparing 'Qt', 'QJ', and neither 'Qt' nor 'QJ' 
+ - qh-eg.html: added examples comparing 'Qt', 'QJ', and neither 'Qt' nor 'QJ'
         eg.15a.surface, eg.15b.triangle, eg.17a.delaunay.2, etc.
  - Reorganized and enhanced discussion of precision problems in qh_impre.htm
  - Fixed spelling errors [K. Briggs]
@@ -513,10 +515,10 @@ Changes to code
  - qh_checkpolygon: report qh.facet_next error if NARROWhull & dist>MINoutside
  - qh_findbest: renamed "newfacets" parameter to "isnewfacets" since it is boolT
  - qh_findbest/qh_findbestnew: testhorizon even if !MERGING
-        Otherwise qhull c D6 | qhull Q0 Tv assigns coplanar points 
+        Otherwise qhull c D6 | qhull Q0 Tv assigns coplanar points
  - qh_resetlists: add qh_RESETvisible for qh_triangulate
  - qh_findbest: search better facets first.  Rewritten.
- - qh_findbest: increased minminsearch, always check coplanar facets.  
+ - qh_findbest: increased minminsearch, always check coplanar facets.
         See: RBOX 1000 s Z1 G1e-13 t996564279 | QHULL Tv
  - qh_findbestnew: report precision error for deleted cones [rare event]
         e.g.:  RBOX 1000 s W1e-13 P0 t1001034076 | QHULL d Qbb Qc Tv
@@ -525,14 +527,14 @@ Changes to code
  - qh_partitionpoint, Delaunay sites can not be inside.  Otherwise points may
        be outside upperDelaunay facets yet not near-inside Delaunay facets
        See: RBOX s 1000 t993602376 | QHULL C-1e-3 d  Qbb FA Tv
- - qh_partitioncoplanar: call qh_findbest/qh_findbestnew with qh DELAUNAY 
- - qh_printlists: format long lines 
+ - qh_partitioncoplanar: call qh_findbest/qh_findbestnew with qh DELAUNAY
+ - qh_printlists: format long lines
  - qh_printvertex: format long lines
- - user.h: tightened qh_WARNnarrow and qh_MAXnarrow.  Do not see problems 
+ - user.h: tightened qh_WARNnarrow and qh_MAXnarrow.  Do not see problems
        until they are -1.0.
- - user.h: defined qh_DISToutside, qh_SEARCHdist, and qh_USEfindbestnew 
+ - user.h: defined qh_DISToutside, qh_SEARCHdist, and qh_USEfindbestnew
  - qh_checkfacet: in 3-d, allow #ridges > #vertices.  Can get a vertex twice
-   in a ridge list, e.g,  RBOX 1000 s W1e-13 t995849315 D2 | QHULL d Tc Tv 
+   in a ridge list, e.g,  RBOX 1000 s W1e-13 t995849315 D2 | QHULL d Tc Tv
 
 Changes to FAQ
  - Recommended use of triangulated output ('Qt')
@@ -543,7 +545,7 @@ Changes to distribution
 
 Changes to Qhull library
  - Added qh_triangulate() to poly2.c.  It triangulates the output.
- - Added option 'Q11' to copy normals and recompute centrums for tricoplanar facets 
+ - Added option 'Q11' to copy normals and recompute centrums for tricoplanar facets
         'FP' may not print the nearest vertex for coplanar points
         Use option 'Q11' when adding points after qh_triangulate()
 
@@ -553,8 +555,8 @@ qhull 3.0 2001/02/11
 Changes to distribution
  - added qconvex, qdelaunay, qhalf, and qvoronoi
  - added qhull-interface.cpp on calling Qhull from C++ [K. Erleben]
- - renamed to qhull3.0/.   
- - added eg/, html/, and src/ directories 
+ - renamed to qhull3.0/.
+ - added eg/, html/, and src/ directories
 
 Changes to URLs
  - MathLab6 qhull: convhulln, delaunayn, griddatan, tsearchn, vororoin [Z. You]
@@ -572,7 +574,7 @@ Changes to documentation
 Corrections to code
  - fixed type of arg for error message in qh_initqhull_globals [N. Max]
  - fixed incorrect initialization of qh MINdenom_1 for scalepoints
- - fixed drop dim for 'H Qbk:0Bk:0'.  Added qh.feasible_point to qh_projectinput 
+ - fixed drop dim for 'H Qbk:0Bk:0'.  Added qh.feasible_point to qh_projectinput
  - qh_WARNnarrow is angle between facet normals.  Negate for warning message.
  -   statistics for Wangle/etc. concerns facet normals.  Reworded [E. Voth]
  - fixed error message for 'FC v'
@@ -597,8 +599,8 @@ Changes to prompts and warnings
  - ignore warning if options 'v i Pp'.  qvoronoi users may need Delaunay tri.
  - reworded warning if 'Pg' and 'QVn' is not a vertex.
  - reworded warning for 'Qx Tv', qh_check_points() in poly2.c
- - if 'Pp', turn off warning for 'Qbb' without 'd' or 'v' 
- - in qh_printsummary() of Voronoi and Delaunay, distinguish QVn, QGn, Pdn, PDn 
+ - if 'Pp', turn off warning for 'Qbb' without 'd' or 'v'
+ - in qh_printsummary() of Voronoi and Delaunay, distinguish QVn, QGn, Pdn, PDn
 
 Changes to FAQ
  - added FAQ item for nearly flat Delaunay triangles [Z. You]
@@ -619,8 +621,8 @@ qhull 2.6 1999/04/19
  - added zdoc11 to qh-stat.h#ZZdef for !qh_KEEPstatistics [K. Ford]
  - enhanced qh_initqhull_globals() test of qh_RANDOMint and qh_RANDOMmax
  - added debugging option to always return qh_RANDOMmax from qh_rand()
- - fixed option 'Qr', qh_initialvertices(), to allow a broken qh_rand() 
-   fixed option 'Qr', qh_nextfurthest(), to allow narrow hulls  
+ - fixed option 'Qr', qh_initialvertices(), to allow a broken qh_rand()
+   fixed option 'Qr', qh_nextfurthest(), to allow narrow hulls
      Option 'Qr' simulates the random incremental algorithm for convex hulls
  - added note that qh.num_outside includes coplanar points for narrow hulls
  - added FAQ items for triangles/ridges of 3-d Delaunay triangulation[P. Kumar]
@@ -657,7 +659,7 @@ qhull 2.6 1998/8/12
  - added qh_new_qhull() to user.c for calling qhull() from a program [D. Zwick]
    rewrote user_eg.c to use qh_new_qhull().  Added qh_QHpointer example.
  - added qh_CLOCKtype 2 in user.h to call times() for CPU time [B. Hemkemeier]
- - renamed set.c/set.h to avoid conflict with STL's set.h [G. van den Bergen] 
+ - renamed set.c/set.h to avoid conflict with STL's set.h [G. van den Bergen]
    can also use '#include <qhull/qhull_a.h>' for Qhull library
 
  fixed errors
@@ -678,7 +680,7 @@ qhull 2.6 1998/8/12
  - added .c and .h source files to web distribution and qh-c.htm [J. Sands]
  - documented qh_ZEROdelaunay.  Delaunay and Voronoi diagrams do not include
    facets that are coplanar with the convex hull of the input sites.
-  
+
  modified code
  - replaced computed minnorm in qh_sethyperplane_det with distance test
  - removed 'qh rand_seed' since random number generator is independent of qhull
@@ -701,7 +703,7 @@ qhull 2.5 1998/5/4
  - to browse qh-c.htm, set MIME type of .c and .h files to text/html
  - added example of 3-d Delaunay triangulation to q-faq.htm
  - added Delaunay and Voronoi examples to qh-optv.htm
- 
+
 ------------
 qhull 2.5 1998/2/4
  - added option 'v Fi' for separating hyperplanes of bounded Voronoi regions
@@ -711,12 +713,12 @@ qhull 2.5 1998/2/4
  - fixed missing statistics in qh_allstat* [T. Johnson]
  - rearranged qh_printvdiagram.  Use qh_eachvoronoi to iterate Voronoi ridges.
  - added qh_check_points to qh-math.c
- 
+
 qhull 2.5 1998/1/28
  - added option 'Fv' to print the Voronoi diagram
  - added rbox option 'x' to generate random points in a simplex
  - added rbox option 'y' to generate a simplex and random points
- - added rbox option 'On' to offset the output 
+ - added rbox option 'On' to offset the output
  - add unpacking instructions to README.txt
  - updated discussion of forced output, 'Po'
  - sorted the options alphabetically
@@ -725,10 +727,10 @@ qhull 2.5 1998/1/28
  - added facet->seen2 flag for 'Fv'
 
 qhull 2.5 1998/1/16
- - fixed initialization of qh.last_low on restart of 'd QJ' 
+ - fixed initialization of qh.last_low on restart of 'd QJ'
  - renamed qh_JOGGLEmax to qh_JOGGLEmaxincrease
  - updated URL for Fukuda's cdd program
-  
+
 qhull 2.5 1998/1/12
 
 New or modified features
@@ -744,14 +746,14 @@ Corrections
  - for Mathematica 2.2 ('m') changed %10.8g to %16.8f [A. Zhaxybayev]
  - fixed incorrect warning for 'QV0 Qg' in qh_initbuild [B. Wythoff]
  - fixed unaccessible statistic if !qh_KEEPstatistics for Wnewvertexmax
- - fixed overestimate of qh ONEmerge for point sets outside of 
+ - fixed overestimate of qh ONEmerge for point sets outside of
      first quadrant and far from the origin
  - fixed overestimate of 'Qbb' for point sets far from the origin
  - fixed potential overestimate of qh DISTround under 'Qbb'
  - fixed 'p' printing coplanar points of unselected facets
  - fixed 'Ft' printing centrums unnecessarily in 2-d
-  
-Changes to documentation 
+
+Changes to documentation
  - wrote internal design documentation (qh-c.htm)
  - started frequently asked questions (qh-faq.htm)
  - added a section on joggled input to qh-impre.htm
@@ -764,7 +766,7 @@ Changes to documentation
  - added code for printing Delaunay triangles to qh-code.htm [A. Tsui]
  - options 'Pdk' and 'PDk' do not drop on equality
 
-Improvements to the code 
+Improvements to the code
  - reviewed warning messages for Qhull options in qh_initflags
  - added warning to 's' if premature exit from 'TCn' or 'TVn'
  - 's' prints max distance above/below only if qh.MERGING
@@ -774,7 +776,7 @@ Improvements to the code
  - removed qh_check_maxout for 'Wn Q0'
  - reset tracing after 'TPn' adds point in 4-d and higher
 
-Changes for the Qhull library 
+Changes for the Qhull library
  - changed qh_setdelaunay to call qh_scalelast if used with 'Qbb' or 'QJ'
      Delaunay callers to qh_findbestfacet, qh_addpoint, or qh_findfacet_all
      should always use qh_setdelaunay as in user_eg.c
@@ -790,7 +792,7 @@ Changes for the Qhull library
 
 Other changes to Qhull functions
  - report error for !bestfacet in qh_findbest (it shouldn't happen) [H. Meuret]
- - set newbest in qh_findbest only if bestfacet updated 
+ - set newbest in qh_findbest only if bestfacet updated
  - renamed facet parameter for qh_findbest
  - added maxdist argument to qh_checkpoint
  - moved 'FO' output after qh_partitionall
@@ -809,7 +811,7 @@ qhull 2.4 97/4/2
 
 New or modified features
  - made 'C-0' and 'Qx' default options.  Use 'Q0' to not handle roundoff errors
- - removed point-at-infinity from Delaunay/Voronoi.  
+ - removed point-at-infinity from Delaunay/Voronoi.
      you no longer need to use 'Qu PDk'
  - added 'Qz' to add a point-at-infinity to Delaunay and Voronoi constructions
  - added published version of qhull article in ACM Trans Math Software
@@ -819,7 +821,7 @@ New or modified features
  - changed definition of coplanar point in output to qh min_vertex (see 'Qc')
      it was qh MAXcoplanar ('Un') [could make vertices non-coplanar]
  - automatically set 'Qi' for options 'd Qc' and 'v Qc'.
- - reworded summary ('s') for Delaunay/Voronoi/halfspace.  
+ - reworded summary ('s') for Delaunay/Voronoi/halfspace.
      use 'Fs' and 'FS' for summary statistics.
  - for summary 's' of Delaunay/Voronoi, display number of coplanars for facets
      if none, display total number of coplanars (i.e., non-vertices)
@@ -831,8 +833,8 @@ Corrections
  - fixed qh_partitioncoplanar() to not drop interior points if 'Qi' is used
  - fixed 'FP d' to report distance in point set instead of paraboloid
  - fixed qh_findbest() to search all coplanar facets for qh_check_maxout()
-  
-Changes to documentation 
+
+Changes to documentation
  - added example eg.17f.delaunay.3 to show a triangulation of cospherical sites
  - split up qh-opt.htm into multiple pieces
  - split off qh-code.htm for Qhull code
@@ -842,12 +844,12 @@ Changes to documentation
  - removed 'txt' versions of html files
  - added note to 'PDk' about avoiding a 'd' option immediately after a float
  - under option 'd', display the triangulation with 'GrD3', not 'GnrD3'
- 
+
 Changes to the Qhull library
  - added 'format' argument to qh_printfacetNvertex_nonsimplicial() in io.c
  - removed C++ type errors [J. Stern, S. Marino]
- -  created SETelemt, SETfirstt, etc. for specifying data types.  
- -  use SETelem,etc. for assignments. 
+ -  created SETelemt, SETfirstt, etc. for specifying data types.
+ -  use SETelem,etc. for assignments.
  -  changed setT.maxsize to 'int' to prevent type conversion warnings
  -  changed FOREACH.. to a comma expression for better code and less warning
  -  changed qh.vertex_visit and .visit_id to unsigned int to prevent warnings
@@ -866,10 +868,10 @@ Changes to the Qhull library
 
 ------------
 qhull V2.3 96/6/5
- - fixed total area of Delaunay triangulation. [A. Enge]  
+ - fixed total area of Delaunay triangulation. [A. Enge]
       It should ignore facets on the upper-envelope.
  - if 'd Qu FA', the total area is summed over the upper-Delaunay triangles
- - fixed sign of area for Delaunay triangulations. 
+ - fixed sign of area for Delaunay triangulations.
  - fixed cdd input format for Delaunay triangulation. [A. Enge]
  - for cdd input, allow feasible point for halfspaces.
  - warning if cdd output format for centrums, halfspace intersections, or OFF.
@@ -877,7 +879,7 @@ qhull V2.3 96/6/5
  - option 'QR-n' sets random number seed to n without rotating input
  - fixed qh_findbest() to retest coplanar and flipped facets after a restart
  - for 'd Qu Ts' collects angle statistics for upper Delaunay facets
- 
+
  Changes to the Qhull library
  - expanded user_eg.c for incremental constructions and Delaunay triangulation
  - added discussion of incremental construction to qh_man.html#library
@@ -886,9 +888,9 @@ qhull V2.3 96/6/5
          Please set qh ATinfinity if you explicitly add the point "at-infinity"
          Please set qh ATinfinity if you explicitly call qh_projectinput.
          Please set qh UPPERdelaunay if you explicitly cleared qh ATinfinity.
-         Other users do not need to change their code.         
-   Now you can build a Delaunay triangulation without creating a point 
-   "at-infinity".  This removes a potential, hard-to-understand error.  
+         Other users do not need to change their code.
+   Now you can build a Delaunay triangulation without creating a point
+   "at-infinity".  This removes a potential, hard-to-understand error.
    qh_readpoints sets qh ATinfinity for options 'd' or 'v' without 'Qu'.
    qh_initB sets qh ATinfinity for qh PROJECTdelaunay w/o qh UPPERdelaunay.
    qh_projectinput adds a point "at-infinity" only if qh ATinfinity is set.
@@ -923,7 +925,7 @@ qhull V2.3 96/3/25
 ------------
 qhull V2.2 96/2/15
  - detect narrow initial hulls (cosine of min angle < qh_MAXnarrow in user.h).
-   Write warning if cosine < qh_WARNnarrow in user.h.  If narrow (qh NARROWhull), 
+   Write warning if cosine < qh_WARNnarrow in user.h.  If narrow (qh NARROWhull),
    partition coplanar points as outside points and delay coplanar test to end.
    Needed for  RBOX 1000 L100000 s G1e-6 t995127886 | QHULL Tv
    See 'limitations' in qh-impre.html for further discussion.
@@ -946,7 +948,7 @@ qhull V2.2 95/12/28
    This reduces roundoff errors for Delaunay triangulations with integer coordinates.
  - changed option 'Qu d' to print out the furthest-site Delaunay triangulation
    Use options 'Qu d PD2' to compute the normal 2-d Delaunay triangulation without
-   the point at infinity. 
+   the point at infinity.
  - added notes to the documentation of option 'd'
  - added notes to limitations of how Qhull handles imprecision
  - added warning if options 'FP', 'Fc', or 'Gp' without option 'Qc' or 'Qi'
@@ -957,7 +959,7 @@ qhull V2.2 95/12/28
  - fixed option 'QbB' (qh SCALEpoints was not set)
  - fixed minor confusion between 'Gc' (print centrums) and 'Gp' (print points)
  - rewrote qh_findbestnew for upper convex hull, Delaunay facets
- - changed option name for 'Gp' from 'Gcoplanar' to 'Gpoints' 
+ - changed option name for 'Gp' from 'Gcoplanar' to 'Gpoints'
  - changed "nearest" facet for 'Pdk' to threshold - normal
  - reworked qh GOODclosest for 'Qg'
  - added note that 'Qg' does not always work
@@ -965,26 +967,26 @@ qhull V2.2 95/12/28
  - refined qh DISTround in qh_maxmin/geom2.c for Delaunay triangulations
 
 qhull V2.2 95/12/4
- - Version 2.2 fixes an important bug in computing Delaunay triangulations 
-   and convex hulls with edges sharper than ninety degrees.  The problem 
-   occurs when processing a point at a sharp edge.  A directed search can 
-   not be used for partitioning because one side may hide facets from the 
-   other side.  The new lens-shaped distribution for rbox demonstrates the 
+ - Version 2.2 fixes an important bug in computing Delaunay triangulations
+   and convex hulls with edges sharper than ninety degrees.  The problem
+   occurs when processing a point at a sharp edge.  A directed search can
+   not be used for partitioning because one side may hide facets from the
+   other side.  The new lens-shaped distribution for rbox demonstrates the
    problem.  For example, 'rbox 100 L3 G0.5 s | qhull Tv' fails for Version 2.1.
    O. Schramm found the bug when computing the Delaunay triangulation of points
-   near an outside edge.  
+   near an outside edge.
 
-   I rewrote qh_findbest and related functions.  Qh_findbest 
-   uses an exhaustive test for sharp edges (qh_findbest_sharp).  
+   I rewrote qh_findbest and related functions.  Qh_findbest
+   uses an exhaustive test for sharp edges (qh_findbest_sharp).
    Qh_findbest avoids the upper convex hull of Delaunay triangulations.
 
    Options 'd' and 'v' no longer assign coplanar points to the upper convex hull.
-    
+
    Qh_check_maxout tests near-inside points.  It ignores fully inside points.
    When done, it removes near-inside points from the coplanar sets.
 
-   If you use qh_addpoint or qh_findbest, please review the function headers.  
-   They do not work for lens-shaped hulls for arbitrary facets.  They do work for 
+   If you use qh_addpoint or qh_findbest, please review the function headers.
+   They do not work for lens-shaped hulls for arbitrary facets.  They do work for
    Delaunay triangulations.
 
  Changes to options for V2.2
@@ -993,7 +995,7 @@ qhull V2.2 95/12/4
  - added 'FP' to print nearest vertex for coplanar points
  - added coplanar count to 'Fs' and 's'
  - added number of similar points to summary for Delaunay/Voronoi
- - Option 'Qc' is no longer necessary when merging.  
+ - Option 'Qc' is no longer necessary when merging.
  - 'o' format for Voronoi vertices ('v') generates "0" lines for similar points
  - 'QRn' for Delaunay ('d' or 'v') now rotates about the Z axis (see qh_init_B).
    Otherwise Qhull does not identify the upper hull
@@ -1001,7 +1003,7 @@ qhull V2.2 95/12/4
    set for 'd'.  Even though it was a bad idea, it revealed the above bug.
  - for option list ('FO'), added version, values for one-merge, maxpos, maxneg,
    and near-inside, and flags for zero-centrum
- - optimized 'C-0' and 'Qx'.  These options ("zero-centrum") test vertices 
+ - optimized 'C-0' and 'Qx'.  These options ("zero-centrum") test vertices
    instead of centrums for adjacent simplicial facets.
  - if 'Tv', report number of points that are not verified due to qh_findbest
  - Option 'Q8' ignores near-inside points.
@@ -1016,9 +1018,9 @@ qhull V2.2 95/12/4
    and renumbered the examples for q_eg
  - described facet orientation in 'data structure' section [P. Soikkonen]
  - added notes to qh-man.html/"What to do if something goes wrong"
- - added note about using 'Tv' to verify the results [O. Schramm] 
+ - added note about using 'Tv' to verify the results [O. Schramm]
  - expanded definition of f_r in Performance section [S. Grundmann]
- - noted that Geomview display of a Voronoi diagram adds extra edges 
+ - noted that Geomview display of a Voronoi diagram adds extra edges
    for unbounded Voronoi cells
  - rewrote error "convexity constraints may be too strong" [D. Newland]
  - added limitations section to "Imprecision in Qhull"
@@ -1041,7 +1043,7 @@ qhull V2.2 95/12/4
 
  Changes for users of the Qhull library
  - user code needs to define qh_version (see user_eg.c)
- - merged initialization code into qh_init_A and qh_init_B [M. Mazzario] 
+ - merged initialization code into qh_init_A and qh_init_B [M. Mazzario]
    old code works as before.
    qh_initflags also sets qh qhull_command for qh_initthresholds
    redid initialization for user_eg.c
@@ -1082,7 +1084,7 @@ qhull V2.2 95/12/4
 qhull V2.1 95/9/25
  - converted qhull.man to html format, many edits
  - referenced Shewchuk's triangle program and Schneiders' Mesh Generation page
- - added option 'Qa' to force all points outside 
+ - added option 'Qa' to force all points outside
      automatically set for "precise" Delaunay or Voronoi [Salazar & Velez]
      it is turned off by merging, 'Wn', 'Qc' or 'Qi'
  - added coplanar points to option 'FN'
@@ -1110,7 +1112,7 @@ qhull V2.1 95/9/25
  - added note about locating Delaunay triangles to option 'd' [A. Curtis]
  - added note that coplanar vertices correspond to duplicate points for 'd'
  - added note about option 'd' automatically setting 'PDk' (lower convex hull)
- - added note about precision errors to option 'd' [many users] 
+ - added note about precision errors to option 'd' [many users]
  - added note about qh_findbest() to the Qhull library section [L. Lai]
  - 'make install' renames qhull.man to qhull.1 for Unix [M. Phillips]
  - renamed README, etc. to *.txt to match WWW conventions [D. Cervone]
@@ -1139,7 +1141,7 @@ qhull V2.1 6/7/95
   - fixed cast in qh_point and qh_pointid for 64-bit architectures
   - fixed URL for Amenta's list of computational geometry software
   - fixed cast in qh_meminitbuffers for qhmem.freelists
-  - added test for !qh half_space in qh readpoints 
+  - added test for !qh half_space in qh readpoints
   - clarified options for qh_printhelp_singular()
   - discussed non-simplicial facet area under option 'Fa' in qhull.1
 
@@ -1154,7 +1156,7 @@ qhull V2.1 beta 5/15/95
 
                 ======= main changes ========
   - added halfspace intersection ('Hn,n,n')
-  - facet merging is better, especially for high dimensions 
+  - facet merging is better, especially for high dimensions
   -   added 'Qx' for exact merges of coplanar points and precision faults
   - facet merging is faster, especially for high dimensions.
       e.g., convex hull of the 8-d hypercube is seven times faster
@@ -1174,12 +1176,12 @@ qhull V2.1 beta 5/15/95
   - added 'Un' option to set width of facet for coplanar points.
        This replaces the previous rules for determining coplanar points.
   - changed default MINoutside ('Wn') to twice MINvisible ('Vn')
-  - Geomview output adjusts point radii for MINvisible 'Vn' 
+  - Geomview output adjusts point radii for MINvisible 'Vn'
   - the input format allows the number of points to precede the dimension
   - options 'v' 'd' 'FAn' and 'FMn' record good facets ('Pg')
   - added 'Fd' and 'FD' options for homogeneous coordinates in cdd format
   -   in rbox, added 'h' flag to generate homogeneous coordinates in cdd format
-  - option 'PAn' prints out the n facets with the largest area 
+  - option 'PAn' prints out the n facets with the largest area
   - option 'PMn' prints out the n facets with the most merges
   - option 'Po' under tracing ('Tn') no longer tries to write erroneous facets
   - option 'TCn' only prints the old 'visible' facets for 'f'
@@ -1193,12 +1195,12 @@ qhull V2.1 beta 5/15/95
   - added 'Q4' to avoid merges of old facets into new facets (does worse)
   - added 'Q5' to skip qh_check_maxout (faster, but less accurate)
   - added 'Q6' to skip pre-merge of concave and coplanar facets
-  - added 'Qv' for testing vertex neighbors for convexity (needs merge option) 
+  - added 'Qv' for testing vertex neighbors for convexity (needs merge option)
   - added warning if mix Geomview output with other outputs ('Po' turns off)
   - options 'o v' for 3-d and higher sort the Voronoi vertices by index
 
                 ======= documentation =======
-  - rewrote the introduction and precision sections 
+  - rewrote the introduction and precision sections
   - added a section on performance
   - added an example on halfspace intersection
   - installed examples of Qhull in
@@ -1215,7 +1217,7 @@ qhull V2.1 beta 5/15/95
   - option in user.h (qh_NOmerge) to turn off merging in qhull.
   -   use this instead of redefining qh_merge_nonconvex in user.c
   - simplified user_eg.c.  See qh_call_qhull() in user.c for the full version
-  
+
                 ======== bug fixes ============
   - fixed error in number of points for 'rbox 100 r' (odd distribution)
   - fixed performance error in qh_degen_redundant_neighbors
@@ -1238,7 +1240,7 @@ qhull V2.1 beta 5/15/95
   - added facet->f for facet pointers while merging and for facet area
   - added dfacet/dvertex for printing facets/vertices while debugging
   - added qh_produce_output and qh_printsummary
-   
+
                 ======== changes to code ==========
   - moved qh_setfacetplane from qh_makenewfacets to qh_makenewplanes
   - added qh_setfree2, qh_setcompact, and qh_setduplicate to set.c
@@ -1270,7 +1272,7 @@ qhull V2.1 beta 5/15/95
   - removed angle argument from qh_merge_degenredundant and qh_mergefacet
        only used for tracing
   - getmergeset_initial had extra test of neighbor->simplicial
-  - ridge->nonconvex is now set on only one ridge between non-convex facets 
+  - ridge->nonconvex is now set on only one ridge between non-convex facets
   - moved centrum deletion to qh_updatetested
   - qh_isnewmerge(facet) changed to facet->newmerge (removed NEWmerges)
   - qh_findbestneighbor reports correct distance even if testcentrum
@@ -1307,21 +1309,21 @@ qhull V2.01 6/17/94
   - added an input warning to qh_check_points ('Tv') if coplanars and no 'Qc'
   - qh_partitionpoint: always counts coplanar partitions (Zcoplanarpart)
   - rewrote qh_printhelp_degenerate to emphasize option 'C-0'
-  - For Geomview output, roundoff is not needed when printing the inner and 
+  - For Geomview output, roundoff is not needed when printing the inner and
     outer planes.  This improves Geomview output for the 'Rn' option.
-  - For Geomview output without coplanar points or vertices, qh_GEOMepislon 
+  - For Geomview output without coplanar points or vertices, qh_GEOMepislon
     is not needed.  This removes the edge gap when displaying a Voronoi cell.
-  - For Geomview output 'Gp', direct vertices to the interior point 
+  - For Geomview output 'Gp', direct vertices to the interior point
     instead of the arithmetic center of the displayed vertices.
-    
+
 qhull V2.01 6/11/94
-  - if pre-merge, 'Qf' is automatically set.  Otherwise an outside point may 
+  - if pre-merge, 'Qf' is automatically set.  Otherwise an outside point may
         be dropt by qh_findbest().  This slows down partitioning.
   - always use 'Qc' if merging and all facet->maxoutside's must be right.
         Otherwise distributions with many coplanar points may occassionally
-        miss a coplanar point for a facet.  This is because qh_findbest, when 
-        called by qh_check_maxout, can become stuck at a local maximum if 
-        the search is started at an arbitrary facet.  With 'Qc', the search 
+        miss a coplanar point for a facet.  This is because qh_findbest, when
+        called by qh_check_maxout, can become stuck at a local maximum if
+        the search is started at an arbitrary facet.  With 'Qc', the search
         is started from a coplanar facet.  For example,
                 rbox 1000 W8e-6 t | qhull C-0 Tv
         will (rarely) report that a facet->minoutside is incorrect
@@ -1331,7 +1333,7 @@ qhull V2.01 6/11/94
   - 'rbox t' reports random seed in comment line
   - qh_errexit reports rbox_command | qhull_command and 'QR' random seed
   - added additional tracing to bestdist and setfacetplane
-  - in qh_checkconvex, need to test coplanar against 0 instead of -DISTround 
+  - in qh_checkconvex, need to test coplanar against 0 instead of -DISTround
   - in qh_checkconvex, always test centrums if merging.  The opposite
     vertex of a simplicial facet may be coplanar since a vertex of
     a simplicial facet may be above the facet's hyperplane.
@@ -1342,7 +1344,7 @@ qhull V2.01 6/11/94
 qhull V2.01 6/2/94
   - 's' prints summary to stderr
   - multiple output formats printed in order to stdout
-  - added statistic for worst-case distance for merging simplicial facets 
+  - added statistic for worst-case distance for merging simplicial facets
         can not hope for a better "max distance above/below facet"
         print factor for "max distance.."/"merge simplicial" in printsummary
   - fixed error in scaling input with min/max reversed ('Qb0:1B0:-1')
@@ -1379,7 +1381,7 @@ Converting from qhull 1.01 to qhull 2.00
   - all rbox distributions are now scaled to a 0.5 box (use 'Bn' to change)
   - rbox now adds a comment line.  This may be removed by 'rbox n'
   - 'rbox r s Z G' no longer includes the positive pole
-  - no changes to the Macintosh version 
+  - no changes to the Macintosh version
 
 qhull V2.00 5/23/94
   - if force output ('Po'), facet->maxoutside= 'Wn' since coplanars not updated
diff --git a/src/io.c b/src/io.c
index ee16846..afa89c0 100644
--- a/src/io.c
+++ b/src/io.c
@@ -14,8 +14,8 @@
    This allows the user to avoid loading io.o from qhull.a
 
    copyright (c) 1993-2010 The Geometry Center.
-   $Id: //product/qhull/main/rel/src/io.c#37 $$Change: 1174 $
-   $DateTime: 2010/01/10 22:34:05 $$Author: bbarber $
+   $Id: //product/qhull/main/rel/src/io.c#38 $$Change: 1179 $
+   $DateTime: 2010/01/12 19:53:15 $$Author: bbarber $
 */
 
 #include "qhull_a.h"
@@ -3669,7 +3669,7 @@ int qh_readfeasible(int dim, const char *curline) {
   notes:
     dimension will change in qh_initqhull_globals if qh.PROJECTinput
     uses malloc() since qh_mem not initialized
-    FIXUP QH10000: qh_readpoints needs rewriting, too long
+    FIXUP QH10012: qh_readpoints needs rewriting, too long
 */
 coordT *qh_readpoints(int *numpoints, int *dimension, boolT *ismalloc) {
   coordT *points, *coords, *infinity= NULL;
diff --git a/src/rboxlib.c b/src/rboxlib.c
index e9064be..4f11d22 100644
--- a/src/rboxlib.c
+++ b/src/rboxlib.c
@@ -25,9 +25,8 @@
 #include <stdlib.h>
 
 #ifdef _MSC_VER  /* Microsoft Visual C++ */
-#pragma warning( disable : 4244)  /* conversion from double to int */
 #pragma warning( disable : 4706)  /* assignment within conditional expression. */
-#pragma warning( disable : 4996)  /* this function or variable may be unsafe. */
+#pragma warning( disable : 4996)  /* this function (strncat) or variable may be unsafe. */
 #endif
 
 #define MAXdim 200
@@ -346,7 +345,7 @@ int qh_rboxpoints(FILE* fout, FILE* ferr, char* rbox_command) {
       seed= 11*seed + i;
     }
   }else if (israndom) {
-    seed= time(&timedata);
+    seed= (int)time(&timedata);
     sprintf(seedbuf, " t%d", seed);  /* appends an extra t, not worth removing */
     strncat(command, seedbuf, sizeof(command));
     t= strstr(command, " t ");
diff --git a/src/user.h b/src/user.h
index ee6666f..52608c3 100644
--- a/src/user.h
+++ b/src/user.h
@@ -49,8 +49,8 @@ Code flags --
 
   If add new messages, assign these values and increment.
 
-  def counters = [27, 1047, 2059, 3025, 4068, 5003, 6233, 7079, 8143, 9410]
-  QH10012-10016 available
+  def counters =  [27, 1047, 2059, 3025, 4068, 5003, 
+     6233, 7079, 8143, 9410, 10026]
 
   See: qh_ERR* [libqhull.h]
 */
-- 
GitLab