Commit bd1ff7a5 authored by Robert Maynard's avatar Robert Maynard

Allow vtkm errors to properly work with shared libraries.

parent 5921c8d9
......@@ -34,7 +34,7 @@ namespace cont {
/// The superclass of all exceptions thrown by any VTKm function or method.
///
class Error : public std::exception
class VTKM_ALWAYS_EXPORT Error : public std::exception
{
public:
//See note about GetMessage macro below.
......
......@@ -28,7 +28,7 @@ namespace cont {
/// The superclass of all exceptions thrown from within the VTKm control
/// environment.
///
class ErrorControl : public vtkm::cont::Error
class VTKM_ALWAYS_EXPORT ErrorControl : public vtkm::cont::Error
{
protected:
ErrorControl() { }
......
......@@ -28,7 +28,7 @@ namespace cont {
/// This class is thrown when VTK-m attempts to manipulate memory that it should
/// not.
///
class ErrorControlBadAllocation : public ErrorControl
class VTKM_ALWAYS_EXPORT ErrorControlBadAllocation : public ErrorControl
{
public:
ErrorControlBadAllocation(const std::string &message)
......
......@@ -28,7 +28,7 @@ namespace cont {
/// This class is thrown when VTK-m encounters data of a type that is
/// incompatible with the current operation.
///
class ErrorControlBadType : public ErrorControl
class VTKM_ALWAYS_EXPORT ErrorControlBadType : public ErrorControl
{
public:
ErrorControlBadType(const std::string &message)
......
......@@ -28,7 +28,7 @@ namespace cont {
/// This class is thrown when a VTKm function or method encounters an invalid
/// value that inhibits progress.
///
class ErrorControlBadValue : public ErrorControl
class VTKM_ALWAYS_EXPORT ErrorControlBadValue : public ErrorControl
{
public:
ErrorControlBadValue(const std::string &message)
......
......@@ -29,7 +29,7 @@ namespace cont {
/// be reached. This error usually indicates a bug in vtkm or, at best, VTKm
/// failed to detect an invalid input it should have.
///
class ErrorControlInternal : public ErrorControl
class VTKM_ALWAYS_EXPORT ErrorControlInternal : public ErrorControl
{
public:
ErrorControlInternal(const std::string &message)
......
......@@ -28,7 +28,7 @@ namespace cont {
/// This class is thrown in the control environment whenever an error occurs in
/// the execution environment.
///
class ErrorExecution : public vtkm::cont::Error
class VTKM_ALWAYS_EXPORT ErrorExecution : public vtkm::cont::Error
{
public:
ErrorExecution(const std::string message)
......
......@@ -70,7 +70,7 @@ namespace cuda {
/// This error is thrown whenever an unidentified CUDA runtime error is
/// encountered.
///
class ErrorControlCuda : public vtkm::cont::ErrorControl
class VTKM_ALWAYS_EXPORT ErrorControlCuda : public vtkm::cont::ErrorControl
{
public:
ErrorControlCuda(cudaError_t error)
......
......@@ -25,7 +25,7 @@
namespace vtkm {
namespace io {
class ErrorIO : public vtkm::cont::Error
class VTKM_ALWAYS_EXPORT ErrorIO : public vtkm::cont::Error
{
public:
ErrorIO() { }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment