diff --git a/src/distance_box_halfspace.cpp b/src/distance_box_halfspace.cpp
index 191cf09bcb86f2c04b7ae9aeb8b78ee11cae41b9..0b42a4b16532cae7914a3396340e9e31a4fe674a 100644
--- a/src/distance_box_halfspace.cpp
+++ b/src/distance_box_halfspace.cpp
@@ -46,7 +46,7 @@
 namespace hpp
 {
 namespace fcl {
-    class GJKSolver;
+  struct GJKSolver;
 
   template <>
   FCL_REAL ShapeShapeDistance <Box, Halfspace>
diff --git a/src/distance_box_plane.cpp b/src/distance_box_plane.cpp
index d63879225374473452c6aa0387b9cd323508c2c2..841b17b65b317a37da1c7a2000624887d150db53 100644
--- a/src/distance_box_plane.cpp
+++ b/src/distance_box_plane.cpp
@@ -46,7 +46,7 @@
 namespace hpp
 {
 namespace fcl {
-    class GJKSolver;
+  struct GJKSolver;
 
   template <>
   FCL_REAL ShapeShapeDistance <Box, Plane>
diff --git a/src/distance_box_sphere.cpp b/src/distance_box_sphere.cpp
index f35030e308a3342788832a944ac6f0877640423c..a98f9fe7e602d9d0d3ef9f04a99efd5ee78f0646 100644
--- a/src/distance_box_sphere.cpp
+++ b/src/distance_box_sphere.cpp
@@ -46,7 +46,7 @@
 namespace hpp
 {
 namespace fcl {
-    class GJKSolver;
+  struct GJKSolver;
 
   template <>
   FCL_REAL ShapeShapeDistance <Box, Sphere>
diff --git a/src/distance_capsule_halfspace.cpp b/src/distance_capsule_halfspace.cpp
index f33fc5175999bacab4c1223243074d8356b6f278..1175b5aebae7781ceb88d415280000e666cd4fb9 100644
--- a/src/distance_capsule_halfspace.cpp
+++ b/src/distance_capsule_halfspace.cpp
@@ -46,7 +46,7 @@
 namespace hpp
 {
 namespace fcl {
-    class GJKSolver;
+  struct GJKSolver;
 
   template <>
   FCL_REAL ShapeShapeDistance <Capsule, Halfspace>
diff --git a/src/distance_capsule_plane.cpp b/src/distance_capsule_plane.cpp
index beb862d065661df9a52cd813083ad2893230c917..a1ad00b7edbaaa89efc33dd1a9f262f63a0183a2 100644
--- a/src/distance_capsule_plane.cpp
+++ b/src/distance_capsule_plane.cpp
@@ -46,7 +46,7 @@
 namespace hpp
 {
 namespace fcl {
-    class GJKSolver;
+  struct GJKSolver;
 
   template <>
   FCL_REAL ShapeShapeDistance <Capsule, Plane>
diff --git a/src/distance_cone_halfspace.cpp b/src/distance_cone_halfspace.cpp
index 0191f6530d5e6c4b1ee2014c223bc92c721d2b62..580a88c9e4d0bb91c58515284f98fe849b1c2ebb 100644
--- a/src/distance_cone_halfspace.cpp
+++ b/src/distance_cone_halfspace.cpp
@@ -46,7 +46,7 @@
 namespace hpp
 {
 namespace fcl {
-    class GJKSolver;
+  struct GJKSolver;
 
   template <>
   FCL_REAL ShapeShapeDistance <Cone, Halfspace>
diff --git a/src/distance_cone_plane.cpp b/src/distance_cone_plane.cpp
index bc66f953b9ae9e4db6fa17d2e70a3c74ef8e31a1..f12eeab546c183e59042c9f4c314bf364b1940c5 100644
--- a/src/distance_cone_plane.cpp
+++ b/src/distance_cone_plane.cpp
@@ -46,7 +46,7 @@
 namespace hpp
 {
 namespace fcl {
-    class GJKSolver;
+  struct GJKSolver;
 
   template <>
   FCL_REAL ShapeShapeDistance <Cone, Plane>
diff --git a/src/distance_cylinder_halfspace.cpp b/src/distance_cylinder_halfspace.cpp
index dd469a6c4378999c390795d9b5a59d18e3d8dd39..c35041e0134c66af76786cd8dc339a9de5f883eb 100644
--- a/src/distance_cylinder_halfspace.cpp
+++ b/src/distance_cylinder_halfspace.cpp
@@ -46,7 +46,7 @@
 namespace hpp
 {
 namespace fcl {
-    class GJKSolver;
+  struct GJKSolver;
 
   template <>
   FCL_REAL ShapeShapeDistance <Cylinder, Halfspace>
diff --git a/src/distance_cylinder_plane.cpp b/src/distance_cylinder_plane.cpp
index e8be52cb7c2e938b92bec2ed900cd919f8c65add..8e335ec1fc51ad9fd424dd4344a3a01f133ce34a 100644
--- a/src/distance_cylinder_plane.cpp
+++ b/src/distance_cylinder_plane.cpp
@@ -46,7 +46,7 @@
 namespace hpp
 {
 namespace fcl {
-    class GJKSolver;
+  struct GJKSolver;
 
   template <>
   FCL_REAL ShapeShapeDistance <Cylinder, Plane>
diff --git a/src/distance_sphere_cylinder.cpp b/src/distance_sphere_cylinder.cpp
index 993933d98c11437394116540f907edf0ba0c8300..c53e472772493ee4fc363f921836820a3deb83e1 100644
--- a/src/distance_sphere_cylinder.cpp
+++ b/src/distance_sphere_cylinder.cpp
@@ -46,7 +46,7 @@
 namespace hpp
 {
 namespace fcl {
-    class GJKSolver;
+  struct GJKSolver;
 
   template <>
   FCL_REAL ShapeShapeDistance <Sphere, Cylinder>
diff --git a/src/distance_sphere_halfspace.cpp b/src/distance_sphere_halfspace.cpp
index 6c7b9b7435a01e4785b401640f1f35064103295f..8e069eb10dbcd9267ad800068dcc418ceed11d1e 100644
--- a/src/distance_sphere_halfspace.cpp
+++ b/src/distance_sphere_halfspace.cpp
@@ -46,7 +46,7 @@
 namespace hpp
 {
 namespace fcl {
-    class GJKSolver;
+  struct GJKSolver;
 
   template <>
   FCL_REAL ShapeShapeDistance <Sphere, Halfspace>
diff --git a/src/distance_sphere_plane.cpp b/src/distance_sphere_plane.cpp
index 28754534852fc053ed52621d8cedae1298ac8d22..c1ce63258706de338332e78df116479fcf38c774 100644
--- a/src/distance_sphere_plane.cpp
+++ b/src/distance_sphere_plane.cpp
@@ -46,7 +46,7 @@
 namespace hpp
 {
 namespace fcl {
-    class GJKSolver;
+  struct GJKSolver;
 
   template <>
   FCL_REAL ShapeShapeDistance <Sphere, Plane>