<html>
    <head>
      <base href="https://bugs.llvm.org/">
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - No-op Boost/CGAL code fails to compile with clang-cl"
   href="https://bugs.llvm.org/show_bug.cgi?id=45617">45617</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>No-op Boost/CGAL code fails to compile with clang-cl
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>clang
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>10.0
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>PC
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Windows XP
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>enhancement
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>P
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>C++
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>unassignedclangbugs@nondot.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>vanboxem.ruben@gmail.com
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>blitzrakete@gmail.com, dgregor@apple.com, erik.pilkington@gmail.com, llvm-bugs@lists.llvm.org, richard-llvm@metafoo.co.uk
          </td>
        </tr></table>
      <p>
        <div>
        <pre>Attached repro case fails to compile.
Original code uses CGAL 4.14 and Boost 1.70.
This also failed with Clang version 9.0.1 as well as current trunk.

Basically this code fails to compile:

#include <CGAL/Mesh_triangulation_3.h>
#include <CGAL/Mesh_complex_3_in_triangulation_3.h>
#include <CGAL/Mesh_criteria_3.h>
#include <CGAL/Polyhedral_mesh_domain_3.h>
#include <CGAL/make_mesh_3.h>
#include <CGAL/IO/Polyhedron_iostream.h>

typedef CGAL::Exact_predicates_inexact_constructions_kernel Kernel;
typedef CGAL::Polyhedron_3 <Kernel>                         KernelPolyhedron;
typedef KernelPolyhedron::HalfedgeDS                              HalfedgeDS;
typedef CGAL::Polyhedral_mesh_domain_3<KernelPolyhedron, Kernel>  MeshDomain;

#ifdef CGAL_CONCURRENT_MESH_3
typedef CGAL::Mesh_triangulation_3 <
MeshDomain,
CGAL::Kernel_traits<MeshDomain>::Kernel, // Same as sequential
CGAL::Parallel_tag                        // Tag to activate parallelism
<span class="quote">>::type Tr;</span >
#else
typedef CGAL::Mesh_triangulation_3<MeshDomain>::type   Tr;
#endif

typedef CGAL::Mesh_complex_3_in_triangulation_3<Tr>     C3T3;
typedef CGAL::Mesh_criteria_3<Tr>                       MeshCriteria;
typedef C3T3::Vertices_in_complex_iterator              VerticesIterator;
typedef C3T3::Cells_in_complex_iterator                 CellsIterator;
typedef C3T3::Facets_in_complex_iterator                FacetsIterator;
typedef Tr::Finite_vertices_iterator                    FiniteVerticesIterator;
typedef Tr::Vertex_handle                               VertexHandle;

using namespace CGAL::parameters;

bool buildMesh(/*cgal::SurfaceMeshPolisherInputData & inputData,
cgal::SurfaceMeshPolisherOutputData & outputData, */bool * cancel)
{
    KernelPolyhedron polyhedron;
    bool ok = true;
    C3T3 c3t3;
    return ok;
}</pre>
        </div>
      </p>


      <hr>
      <span>You are receiving this mail because:</span>

      <ul>
          <li>You are on the CC list for the bug.</li>
      </ul>
    </body>
</html>