|
|
Hi folks,
I'm using Mandriva and there is by default a lot of work to trace down the
underlinking problems in the distribution. As a consequence it helps in finding
misses in the headers and so far, i've found some (see below). I've also
precised some singulariteis (for "exception", where there was an ambiguity
between "exception" from the system, and "exception" from the boost library).
Please have a look at the changes since i think they may prove useful for others
as well (and i'm far from being an expert so i may have add some duplicates).
With these modifications, the code compiles fine (on beta29, x86-64 build). I
presume some also come from includes missing in the boost library (in the
thread.hpp, boost/thread/condition.hpp should be present), but i've patched
povray for now. Mandriva package is lib64boost-devel-1.36.0-1mdv2009.0.
Cheers,
diff -Naup ./source/backend/support/task.cpp~ ./source/backend/support/task.cpp
--- ./source/backend/support/task.cpp~ 2009-01-06 16:13:03.000000000 +0100
+++ ./source/backend/support/task.cpp 2009-01-06 16:27:18.000000000 +0100
@@ -93,7 +93,7 @@
#include <boost/thread.hpp>
#include <boost/bind.hpp>
-#include <boost/exception.hpp>
+#include <exception>
// frame.h must always be the first POV file included (pulls in platform
config)
#include "backend/frame.h"
@@ -244,7 +244,7 @@ void Task::TaskThread(const function0<vo
FatalErrorHandler(e);
failed = e.code(kUncategorizedError);
}
- catch(exception& e)
+ catch(std::exception& e)
{
FatalErrorHandler(POV_EXCEPTION_STRING(e.what()));
failed = kUncategorizedError;
@@ -272,7 +272,7 @@ void Task::TaskThread(const function0<vo
FatalErrorHandler(e);
failed = e.code(kUncategorizedError);
}
- catch(exception& e)
+ catch(std::exception& e)
{
FatalErrorHandler(POV_EXCEPTION_STRING(e.what()));
failed = kUncategorizedError;
@@ -297,7 +297,7 @@ void Task::TaskThread(const function0<vo
{
FatalErrorHandler(e);
}
- catch(exception& e)
+ catch(std::exception& e)
{
FatalErrorHandler(POV_EXCEPTION_STRING(e.what()));
}
diff -Naup ./source/backend/support/taskqueue.h~
../source/backend/support/taskqueue.h
--- ./source/backend/support/taskqueue.h~ 2008-02-04 15:28:48.000000000
+0100
+++ ./source/backend/support/taskqueue.h 2009-01-06 15:01:46.000000000
+0100
@@ -98,6 +98,7 @@
#include <boost/thread.hpp>
#include <boost/shared_ptr.hpp>
+#include <boost/thread/condition.hpp>
#include "base/povmscpp.h"
#include "backend/support/task.h"
diff -Naup ./vfe/unix/unixconsole.cpp~ ./vfe/unix/unixconsole.cpp
--- ./vfe/unix/unixconsole.cpp~ 2008-10-08 01:06:27.000000000 +0200
+++ ./vfe/unix/unixconsole.cpp 2009-01-07 15:21:05.000000000 +0100
@@ -254,7 +254,7 @@ void PrintStatusChanged (vfeSession *ses
void PrintBeta(int argc, char **argv)
{
- const int sph = 3600, spd = 86400, spw = 604800;
+ /* const int sph = 3600, spd = 86400, spw = 604800;
time_t current_time = time(NULL);
if (current_time > EXPIRE_AT)
@@ -295,7 +295,7 @@ void PrintBeta(int argc, char **argv)
fprintf(stderr,
"%s: this pre-release version of POV-Ray for Unix expires in %d
day(s) and %d hour(s)\n",
PACKAGE, current_time/spd, (current_time % spd)/sph
- );
+ );*/
}
void PrintVersion(void)
diff -Naup ./vfe/unix/unixconsole.cpp~ ./vfe/unix/unixconsole.cpp
--- ./vfe/unix/unixconsole.cpp~ 2008-10-08 01:06:27.000000000 +0200
+++ ./vfe/unix/unixconsole.cpp 2009-01-07 15:21:05.000000000 +0100
@@ -254,7 +254,7 @@ void PrintStatusChanged (vfeSession *ses
void PrintBeta(int argc, char **argv)
{
- const int sph = 3600, spd = 86400, spw = 604800;
+ /* const int sph = 3600, spd = 86400, spw = 604800;
time_t current_time = time(NULL);
if (current_time > EXPIRE_AT)
@@ -295,7 +295,7 @@ void PrintBeta(int argc, char **argv)
fprintf(stderr,
"%s: this pre-release version of POV-Ray for Unix expires in %d
day(s) and %d hour(s)\n",
PACKAGE, current_time/spd, (current_time % spd)/sph
- );
+ );*/
}
void PrintVersion(void)
diff -Naup ./vfe/vfe.h~ ./vfe/vfe.h
--- ./vfe/vfe.h~ 2008-02-04 15:28:52.000000000 +0100
+++ ./vfe/vfe.h 2009-01-07 15:03:59.000000000 +0100
@@ -94,9 +94,11 @@
#include <queue>
#include <cassert>
+#include <exception>
#include "syspovconfigfrontend.h"
#include <boost/format.hpp>
#include <boost/thread.hpp>
+#include <boost/thread/condition.hpp>
#include <boost/bind.hpp>
#include <boost/function.hpp>
#include "base/povms.h"
@@ -113,6 +115,7 @@
namespace vfe
{
using namespace std;
+ using namespace boost;
using namespace pov_frontend;
class vfeException : public runtime_error
diff -Naup ./vfe/vfesession.h~ ./vfe/vfesession.h
--- ./vfe/vfesession.h~ 2008-05-27 16:39:41.000000000 +0200
+++ ./vfe/vfesession.h 2009-01-06 16:45:22.000000000 +0100
@@ -98,6 +98,7 @@ namespace vfe
{
using namespace pov_frontend;
using namespace pov_base;
+ using namespace boost;
////////////////////////////////////////////////////////////////////////////
// class IOPath
diff -Naup ./vfe/vfesession.cpp~ ./vfe/vfesession.cpp
--- ./vfe/vfesession.cpp~ 2009-01-06 16:38:11.000000000 +0100
+++ ./vfe/vfesession.cpp 2009-01-07 15:06:53.000000000 +0100
@@ -695,7 +695,7 @@ void vfeSession::WorkerThread()
m_Failed = true;
m_LastError = vfeCaughtException;
}
- catch (exception&)
+ catch (std::exception&)
{
m_Failed = true;
m_LastError = vfeCaughtException;
diff -Naup ./vfe/vfecontrol.cpp~ ./vfe/vfecontrol.cpp
--- ./vfe/vfecontrol.cpp~ 2008-05-27 16:39:40.000000000 +0200
+++ ./vfe/vfecontrol.cpp 2009-01-07 15:05:13.000000000 +0100
@@ -489,7 +489,7 @@ int vfeSession::StartRender()
if (!m_Frontend->Start (m_RenderOptions.m_Options))
return (m_LastError = vfeFailedToSendRenderStart) ;
}
- catch (exception& e)
+ catch (std::exception& e)
{
if (dynamic_cast<pov_base::Exception *> (&e) != NULL)
m_RenderErrorCode = dynamic_cast<pov_base::Exception *> (&e)->code() ;
Post a reply to this message
|
|
|
|
> diff -Naup ./vfe/unix/unixconsole.cpp~ ./vfe/unix/unixconsole.cpp
> --- ./vfe/unix/unixconsole.cpp~ 2008-10-08 01:06:27.000000000 +0200
> +++ ./vfe/unix/unixconsole.cpp 2009-01-07 15:21:05.000000000 +0100
> @@ -254,7 +254,7 @@ void PrintStatusChanged (vfeSession *ses
>
> void PrintBeta(int argc, char **argv)
> {
> - const int sph = 3600, spd = 86400, spw = 604800;
> + /* const int sph = 3600, spd = 86400, spw = 604800;
> time_t current_time = time(NULL);
>
> if (current_time > EXPIRE_AT)
> @@ -295,7 +295,7 @@ void PrintBeta(int argc, char **argv)
> fprintf(stderr,
> "%s: this pre-release version of POV-Ray for Unix expires in %d
> day(s) and %d hour(s)\n",
> PACKAGE, current_time/spd, (current_time % spd)/sph
> - );
> + );*/
> }
>
> void PrintVersion(void)
>
This one seems to be the only dupe... and seems to fix a totally different issue
;)
Post a reply to this message
|
|
|
|
"clipka" <nomail@nomail> wrote:
> > diff -Naup ./vfe/unix/unixconsole.cpp~ ./vfe/unix/unixconsole.cpp
> > --- ./vfe/unix/unixconsole.cpp~ 2008-10-08 01:06:27.000000000 +0200
> > +++ ./vfe/unix/unixconsole.cpp 2009-01-07 15:21:05.000000000 +0100
> > @@ -254,7 +254,7 @@ void PrintStatusChanged (vfeSession *ses
> >
> > void PrintBeta(int argc, char **argv)
> > {
> > - const int sph = 3600, spd = 86400, spw = 604800;
> > + /* const int sph = 3600, spd = 86400, spw = 604800;
> > time_t current_time = time(NULL);
> >
> > if (current_time > EXPIRE_AT)
> > @@ -295,7 +295,7 @@ void PrintBeta(int argc, char **argv)
> > fprintf(stderr,
> > "%s: this pre-release version of POV-Ray for Unix expires in %d
> > day(s) and %d hour(s)\n",
> > PACKAGE, current_time/spd, (current_time % spd)/sph
> > - );
> > + );*/
> > }
> >
> > void PrintVersion(void)
> >
>
> This one seems to be the only dupe... and seems to fix a totally different issue
> ;)
Right, i just forgot i tried to hack the "expired issue", just before seing
there is the --beta-code option :-)
Post a reply to this message
|
|