diff --git a/Packages/Alpha_shapes_3/changes.txt b/Packages/Alpha_shapes_3/changes.txt
index ab0808c1d46..d5843694183 100644
--- a/Packages/Alpha_shapes_3/changes.txt
+++ b/Packages/Alpha_shapes_3/changes.txt
@@ -1,3 +1,6 @@
+version 3.10:
+- Some fixes for SunPro.
+
version 3.9:
- little bug fix between documentation and source.
diff --git a/Packages/Alpha_shapes_3/include/CGAL/Alpha_shape_3.h b/Packages/Alpha_shapes_3/include/CGAL/Alpha_shape_3.h
index d9e3f996838..4a9619200fa 100644
--- a/Packages/Alpha_shapes_3/include/CGAL/Alpha_shape_3.h
+++ b/Packages/Alpha_shapes_3/include/CGAL/Alpha_shape_3.h
@@ -1622,7 +1622,7 @@ Alpha_shape_3
::get_alpha_shape_facets(std::back_insert_iterator<
//---------------------------------------------------------------------
template < class Dt >
-Alpha_shape_3::Classification_type
+typename Alpha_shape_3::Classification_type
Alpha_shape_3::classify(const Cell_handle& s,
const int& i,
const Coord_type& alpha) const
@@ -1659,7 +1659,7 @@ Alpha_shape_3::classify(const Cell_handle& s,
//---------------------------------------------------------------------
template < class Dt >
-Alpha_shape_3::Classification_type
+typename Alpha_shape_3::Classification_type
Alpha_shape_3::classify(const Cell_handle& s,
const int& i,
const int& j,
@@ -1698,7 +1698,7 @@ Alpha_shape_3::classify(const Cell_handle& s,
//---------------------------------------------------------------------
template < class Dt >
-Alpha_shape_3::Classification_type
+typename Alpha_shape_3::Classification_type
Alpha_shape_3::classify(const Vertex_handle& v,
const Coord_type& alpha) const
// Classifies the vertex `v' of the underlying Delaunay
@@ -1775,7 +1775,7 @@ void Alpha_shape_3::traverse(const Cell_handle& pCell,
//----------------------------------------------------------------------
template
-Alpha_shape_3::Alpha_iterator
+typename Alpha_shape_3::Alpha_iterator
Alpha_shape_3::find_optimal_alpha(const int& nb_components)
// find the minimum alpha that satisfies the properties
// (1) nb_components solid components
@@ -1834,7 +1834,7 @@ Alpha_shape_3::find_optimal_alpha(const int& nb_components)
//----------------------------------------------------------------------
template
-Alpha_shape_3::Coord_type
+typename Alpha_shape_3::Coord_type
Alpha_shape_3::find_alpha_solid() const
// compute the minumum alpha such that all data points
// are either on the boundary or in the interior
diff --git a/Packages/Alpha_shapes_3/include/CGAL/Alpha_shape_euclidean_traits_3.h b/Packages/Alpha_shapes_3/include/CGAL/Alpha_shape_euclidean_traits_3.h
index 9891ac4c653..4c2720c5784 100644
--- a/Packages/Alpha_shapes_3/include/CGAL/Alpha_shape_euclidean_traits_3.h
+++ b/Packages/Alpha_shapes_3/include/CGAL/Alpha_shape_euclidean_traits_3.h
@@ -69,7 +69,7 @@ public:
typedef Point_3 Point;
typedef typename R::Segment_3 Segment_3;
- typedef Compute_squared_radius_circumsphere_3
+ typedef CGAL::Compute_squared_radius_circumsphere_3
Compute_squared_radius_circumsphere_3;
typedef typename R::Side_of_bounded_sphere_3 Side_of_bounded_sphere_3;
diff --git a/Packages/Alpha_shapes_3/include/CGAL/Weighted_alpha_shape_euclidean_traits_3.h b/Packages/Alpha_shapes_3/include/CGAL/Weighted_alpha_shape_euclidean_traits_3.h
index 59ed7da7443..c1fb6372c32 100644
--- a/Packages/Alpha_shapes_3/include/CGAL/Weighted_alpha_shape_euclidean_traits_3.h
+++ b/Packages/Alpha_shapes_3/include/CGAL/Weighted_alpha_shape_euclidean_traits_3.h
@@ -93,9 +93,9 @@ public:
typedef Weighted_point Point_3;
typedef Weighted_point Point;
- typedef Compute_squared_radius_orthogonalsphere_3
+ typedef CGAL::Compute_squared_radius_orthogonalsphere_3
Compute_squared_radius_orthogonalsphere_3;
- typedef Side_of_bounded_orthogonalsphere_3
+ typedef CGAL::Side_of_bounded_orthogonalsphere_3
Side_of_bounded_orthogonalsphere_3;
//---------------------------------------------------------------------