mirror of https://github.com/CGAL/cgal
Kernel_23: Fix Issue 8140
This commit is contained in:
parent
eb07187e7d
commit
efdf503e2c
|
|
@ -280,12 +280,18 @@ public:
|
||||||
C Cf() const { return C(); }
|
C Cf() const { return C(); }
|
||||||
|
|
||||||
#include <CGAL/Kernel/interface_macros.h>
|
#include <CGAL/Kernel/interface_macros.h>
|
||||||
|
|
||||||
|
// Useless meta-function, added to workaround a bug with Visual C++ 2022 and before
|
||||||
|
// See issue https://github.com/CGAL/cgal/issues/8140
|
||||||
|
template < typename T >
|
||||||
|
struct Handle { typedef T type; };
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
template < typename EK_, typename AK_, typename E2A_, typename Kernel_ >
|
template < typename EK_, typename AK_, typename E2A_, typename Kernel_ >
|
||||||
class Lazy_kernel_base
|
class Lazy_kernel_base
|
||||||
: public Lazy_kernel_generic_base<EK_, AK_, E2A_, Kernel_>
|
: public Lazy_kernel_generic_base<EK_, AK_, E2A_, Kernel_>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@ create_single_source_cgal_program("Filtered_homogeneous.cpp")
|
||||||
create_single_source_cgal_program("Homogeneous.cpp")
|
create_single_source_cgal_program("Homogeneous.cpp")
|
||||||
create_single_source_cgal_program("issue_129.cpp")
|
create_single_source_cgal_program("issue_129.cpp")
|
||||||
create_single_source_cgal_program("issue_3301.cpp")
|
create_single_source_cgal_program("issue_3301.cpp")
|
||||||
|
create_single_source_cgal_program("issue_8140.cpp")
|
||||||
create_single_source_cgal_program("Kernel_checker.cpp")
|
create_single_source_cgal_program("Kernel_checker.cpp")
|
||||||
create_single_source_cgal_program("Lazy_kernel.cpp")
|
create_single_source_cgal_program("Lazy_kernel.cpp")
|
||||||
create_single_source_cgal_program("origin_3.cpp")
|
create_single_source_cgal_program("origin_3.cpp")
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,12 @@
|
||||||
|
#include <CGAL/Exact_predicates_exact_constructions_kernel.h>
|
||||||
|
|
||||||
|
int main() { // For testing, we just print the combinations of types
|
||||||
|
using Kernel = CGAL::Exact_predicates_exact_constructions_kernel;
|
||||||
|
using Vec_3 = Kernel::Vector_3;
|
||||||
|
using Cp_fnc3 = Vec_3(*)(const Vec_3&, const Vec_3&);
|
||||||
|
|
||||||
|
Cp_fnc3 f = static_cast<Cp_fnc3>(&CGAL::cross_product<Kernel>);
|
||||||
|
Vec_3 v1, v2;
|
||||||
|
Vec_3 v = f(v1, v2);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue