diff --git a/src/libslic3r/BranchingTree/BranchingTree.cpp b/src/libslic3r/BranchingTree/BranchingTree.cpp
index 4e61ebda3..3026c3d75 100644
--- a/src/libslic3r/BranchingTree/BranchingTree.cpp
+++ b/src/libslic3r/BranchingTree/BranchingTree.cpp
@@ -9,7 +9,7 @@
 
 namespace Slic3r { namespace branchingtree {
 
-bool build_tree(PointCloud &nodes, Builder &builder)
+void build_tree(PointCloud &nodes, Builder &builder)
 {
     constexpr size_t ReachablesToExamine = 5;
 
@@ -149,18 +149,16 @@ bool build_tree(PointCloud &nodes, Builder &builder)
         }
 
     }
-
-    return true;
 }
 
-bool build_tree(const indexed_triangle_set & its,
-                const std::vector<Node> &support_roots,
-                Builder &                    builder,
-                const Properties &           properties)
+void build_tree(const indexed_triangle_set &its,
+                const std::vector<Node>    &support_roots,
+                Builder                    &builder,
+                const Properties           &properties)
 {
     PointCloud nodes(its, support_roots, properties);
 
-    return build_tree(nodes, builder);
+    build_tree(nodes, builder);
 }
 
 ExPolygon make_bed_poly(const indexed_triangle_set &its)
diff --git a/src/libslic3r/BranchingTree/BranchingTree.hpp b/src/libslic3r/BranchingTree/BranchingTree.hpp
index b03ed06ec..d2eabc7ee 100644
--- a/src/libslic3r/BranchingTree/BranchingTree.hpp
+++ b/src/libslic3r/BranchingTree/BranchingTree.hpp
@@ -119,23 +119,19 @@ public:
 // cannot be inserted. If a particular path is unavailable, the algorithm
 // will try a few other paths as well. If all of them fail, one of the
 // report_unroutable_* methods will be called as a last resort.
-bool build_tree(const indexed_triangle_set & its,
-                const std::vector<Node> &support_leafs,
-                Builder &                    builder,
-                const Properties &           properties = {});
+void build_tree(const indexed_triangle_set &its,
+                const std::vector<Node>    &support_leafs,
+                Builder                    &builder,
+                const Properties           &properties = {});
 
-inline bool build_tree(const indexed_triangle_set & its,
-                       const std::vector<Node> &support_leafs,
-                       Builder &&                   builder,
-                       const Properties &           properties = {})
+inline void build_tree(const indexed_triangle_set &its,
+                       const std::vector<Node>    &support_leafs,
+                       Builder                   &&builder,
+                       const Properties           &properties = {})
 {
-    return build_tree(its, support_leafs, builder, properties);
+    build_tree(its, support_leafs, builder, properties);
 }
 
-//class PointCloud;
-
-//bool build_tree(PointCloud &pcloud, Builder &builder);
-
 // Helper function to derive a bed polygon only from the model bounding box.
 ExPolygon make_bed_poly(const indexed_triangle_set &its);
 
diff --git a/src/libslic3r/BranchingTree/PointCloud.hpp b/src/libslic3r/BranchingTree/PointCloud.hpp
index d61013737..de4afc2a1 100644
--- a/src/libslic3r/BranchingTree/PointCloud.hpp
+++ b/src/libslic3r/BranchingTree/PointCloud.hpp
@@ -238,7 +238,7 @@ template<class PC, class Fn> void traverse(PC &&pc, size_t root, Fn &&fn)
     }
 }
 
-bool build_tree(PointCloud &pcloud, Builder &builder);
+void build_tree(PointCloud &pcloud, Builder &builder);
 
 }} // namespace Slic3r::branchingtree