fix the static assertions about nothrow-movable

```
/mnt/testsuite/include/CGAL/Conforming_constrained_Delaunay_triangulation_3.h:543:23: error: static assertion failed
  543 |   static_assert(CGAL::is_nothrow_movable_v<CDT_3_impl>);
      |                 ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
This commit is contained in:
Laurent Rineau 2025-02-12 13:53:18 +01:00
parent 87e979160f
commit 9572c603d5
4 changed files with 9 additions and 5 deletions

View File

@ -930,6 +930,7 @@ protected:
Compare_vertex_handle comp = {this}; Compare_vertex_handle comp = {this};
Constraint_hierarchy constraint_hierarchy = {comp}; Constraint_hierarchy constraint_hierarchy = {comp};
static_assert(CGAL::is_nothrow_movable_v<Constraint_hierarchy>);
Bbox_3 bbox{}; Bbox_3 bbox{};
double segment_vertex_epsilon = 1e-8; double segment_vertex_epsilon = 1e-8;
std::optional<double> max_bbox_edge_length; std::optional<double> max_bbox_edge_length;

View File

@ -8,6 +8,8 @@
using K = CGAL::Exact_predicates_inexact_constructions_kernel; using K = CGAL::Exact_predicates_inexact_constructions_kernel;
using CDT = CGAL::Conforming_constrained_Delaunay_triangulation_3<K>; using CDT = CGAL::Conforming_constrained_Delaunay_triangulation_3<K>;
static_assert(CGAL::is_nothrow_movable_v<CDT>);
int main(int argc, char* argv[]) int main(int argc, char* argv[])
{ {
CGAL::Surface_mesh<K::Point_3> mesh; CGAL::Surface_mesh<K::Point_3> mesh;

View File

@ -73,6 +73,7 @@ public:
using Self = Constrained_triangulation_plus_2<Tr_>; using Self = Constrained_triangulation_plus_2<Tr_>;
using Base = Tr_; using Base = Tr_;
using Constraint_hierarchy = Ctp_2_hierarchy_type<Tr_>; using Constraint_hierarchy = Ctp_2_hierarchy_type<Tr_>;
static_assert(CGAL::is_nothrow_movable_v<Constraint_hierarchy>);
protected: protected:
const auto& hierarchy() const { return static_cast<const Constraint_hierarchy&>(*this); } const auto& hierarchy() const { return static_cast<const Constraint_hierarchy&>(*this); }
auto& hierarchy() { return static_cast<Constraint_hierarchy&>(*this); } auto& hierarchy() { return static_cast<Constraint_hierarchy&>(*this); }

View File

@ -528,7 +528,7 @@ private:
Compare comp; Compare comp;
Sc_to_c_map sc_to_c_map; Sc_to_c_map sc_to_c_map;
std::queue<size_type> free_ids; std::stack<size_type, std::vector<size_type>> free_ids;
Constraints_set constraints_set; Constraints_set constraints_set;
} priv; } priv;
public: public:
@ -650,7 +650,7 @@ private:
if(priv.free_ids.empty()) { if(priv.free_ids.empty()) {
id = priv.constraints_set.size(); id = priv.constraints_set.size();
} else { } else {
id = priv.free_ids.front(); id = priv.free_ids.top();
priv.free_ids.pop(); priv.free_ids.pop();
} }
Constraint_id cid{new Vertex_list_with_info{this}, id}; Constraint_id cid{new Vertex_list_with_info{this}, id};