Workaround for clang 3.2 libc++ empty struct bug.

Certain tests have empty structs or classes.
This encounters a bug with clang: http://llvm.org/bugs/show_bug.cgi?id=16764
This is fixed in later versions of clang, but not the version
currently bundled with Mavericks and XCode 5
This commit is contained in:
Marvin Greenberg 2014-01-31 16:03:14 -05:00
commit c3eff9234c
6 changed files with 15 additions and 7 deletions

View file

@ -94,14 +94,16 @@ public:
namespace Space { namespace Space {
class Flow { class Flow {
int x;
public: public:
Flow(int i) {} Flow(int i) : x(i) {}
}; };
class FlowFlow { class FlowFlow {
int x;
public: public:
FlowFlow(int i) {} FlowFlow(int i) : x(i) {}
}; };
} }

View file

@ -17,9 +17,10 @@
#if defined(SWIG_GOOD_VECTOR) #if defined(SWIG_GOOD_VECTOR)
%inline %{ %inline %{
class Flow { class Flow {
Flow() {} double x;
Flow():x(0.0) {}
public: public:
Flow(double d) {} Flow(double d) : x(d) {}
}; };
%} %}
@ -28,9 +29,10 @@ public:
%inline %{ %inline %{
class Flow { class Flow {
double x;
public: public:
Flow() {} Flow(): x(0.0) {}
Flow(double d) {} Flow(double d) : x(d) {}
}; };
%} %}

View file

@ -47,6 +47,7 @@
%inline %{ %inline %{
class ItkLevelSetNodeUS2 { class ItkLevelSetNodeUS2 {
int x;
}; };
%} %}

View file

@ -191,7 +191,8 @@ template <class C> struct Param
struct Foo struct Foo
{ {
Foo(int i) { int x;
Foo(int i) : x(i) {
} }
}; };

View file

@ -21,6 +21,7 @@ namespace simuPOP
template<class _POP1, class _POP2 = POP> template<class _POP1, class _POP2 = POP>
class Operator class Operator
{ {
int x;
}; };
} }

View file

@ -6,6 +6,7 @@
{ {
struct OpaqueStruct struct OpaqueStruct
{ {
int x;
}; };
} }