mirror of
https://github.com/boostorg/geometry.git
synced 2026-02-11 11:52:11 +00:00
removed not automatically deducable template parameters from methods templates (possible GCC compilation error).
[SVN r80788]
This commit is contained in:
@@ -190,11 +190,11 @@ struct allocators<Allocator, Value, Parameters, Box, node_d_mem_dynamic_tag>
|
||||
|
||||
// create_node_impl
|
||||
|
||||
template <typename Node>
|
||||
struct create_node_poly
|
||||
template <typename BaseNode, typename Node>
|
||||
struct create_dynamic_node
|
||||
{
|
||||
template <typename RetNode, typename AllocNode, typename AllocElems>
|
||||
static inline RetNode * apply(AllocNode & alloc_node, AllocElems & alloc_elems)
|
||||
template <typename AllocNode, typename AllocElems>
|
||||
static inline BaseNode * apply(AllocNode & alloc_node, AllocElems & alloc_elems)
|
||||
{
|
||||
Node * p = alloc_node.allocate(1);
|
||||
|
||||
@@ -237,14 +237,13 @@ struct create_node<
|
||||
dynamic_internal_node<Value, Parameters, Box, Allocators, Tag>
|
||||
>
|
||||
{
|
||||
static inline typename node<Value, Parameters, Box, Allocators, Tag>::type *
|
||||
static inline dynamic_node<Value, Parameters, Box, Allocators, Tag> *
|
||||
apply(Allocators & allocators)
|
||||
{
|
||||
return create_node_poly<
|
||||
return create_dynamic_node<
|
||||
dynamic_node<Value, Parameters, Box, Allocators, Tag>,
|
||||
dynamic_internal_node<Value, Parameters, Box, Allocators, Tag>
|
||||
>::template apply<
|
||||
typename node<Value, Parameters, Box, Allocators, Tag>::type
|
||||
>(allocators.internal_node_allocator, allocators.internal_node_elements_allocator);
|
||||
>::apply(allocators.internal_node_allocator, allocators.internal_node_elements_allocator);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -254,14 +253,13 @@ struct create_node<
|
||||
dynamic_leaf<Value, Parameters, Box, Allocators, Tag>
|
||||
>
|
||||
{
|
||||
static inline typename node<Value, Parameters, Box, Allocators, Tag>::type *
|
||||
static inline dynamic_node<Value, Parameters, Box, Allocators, Tag> *
|
||||
apply(Allocators & allocators)
|
||||
{
|
||||
return create_node_poly<
|
||||
return create_dynamic_node<
|
||||
dynamic_node<Value, Parameters, Box, Allocators, Tag>,
|
||||
dynamic_leaf<Value, Parameters, Box, Allocators, Tag>
|
||||
>::template apply<
|
||||
typename node<Value, Parameters, Box, Allocators, Tag>::type
|
||||
>(allocators.leaf_allocator, allocators.leaf_elements_allocator);
|
||||
>::template apply(allocators.leaf_allocator, allocators.leaf_elements_allocator);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -273,7 +271,7 @@ struct destroy_node<
|
||||
dynamic_internal_node<Value, Parameters, Box, Allocators, Tag>
|
||||
>
|
||||
{
|
||||
static inline void apply(Allocators & allocators, typename node<Value, Parameters, Box, Allocators, Tag>::type * n)
|
||||
static inline void apply(Allocators & allocators, dynamic_node<Value, Parameters, Box, Allocators, Tag> * n)
|
||||
{
|
||||
destroy_node_poly<
|
||||
dynamic_internal_node<Value, Parameters, Box, Allocators, Tag>
|
||||
@@ -287,7 +285,7 @@ struct destroy_node<
|
||||
dynamic_leaf<Value, Parameters, Box, Allocators, Tag>
|
||||
>
|
||||
{
|
||||
static inline void apply(Allocators & allocators, typename node<Value, Parameters, Box, Allocators, Tag>::type * n)
|
||||
static inline void apply(Allocators & allocators, dynamic_node<Value, Parameters, Box, Allocators, Tag> * n)
|
||||
{
|
||||
destroy_node_poly<
|
||||
dynamic_leaf<Value, Parameters, Box, Allocators, Tag>
|
||||
|
||||
@@ -122,14 +122,13 @@ struct create_node<
|
||||
dynamic_internal_node<Value, Parameters, Box, Allocators, node_d_mem_static_tag>
|
||||
>
|
||||
{
|
||||
static inline typename node<Value, Parameters, Box, Allocators, node_d_mem_static_tag>::type *
|
||||
static inline dynamic_node<Value, Parameters, Box, Allocators, node_d_mem_static_tag> *
|
||||
apply(Allocators & allocators)
|
||||
{
|
||||
return create_node_poly<
|
||||
return create_dynamic_node<
|
||||
dynamic_node<Value, Parameters, Box, Allocators, node_d_mem_static_tag>,
|
||||
dynamic_internal_node<Value, Parameters, Box, Allocators, node_d_mem_static_tag>
|
||||
>::template apply<
|
||||
typename node<Value, Parameters, Box, Allocators, node_d_mem_static_tag>::type
|
||||
>(allocators.internal_node_allocator, allocators.internal_node_allocator);
|
||||
>::template apply(allocators.internal_node_allocator, allocators.internal_node_allocator);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -142,11 +141,10 @@ struct create_node<
|
||||
static inline typename node<Value, Parameters, Box, Allocators, node_d_mem_static_tag>::type *
|
||||
apply(Allocators & allocators)
|
||||
{
|
||||
return create_node_poly<
|
||||
return create_dynamic_node<
|
||||
dynamic_node<Value, Parameters, Box, Allocators, node_d_mem_static_tag>,
|
||||
dynamic_leaf<Value, Parameters, Box, Allocators, node_d_mem_static_tag>
|
||||
>::template apply<
|
||||
typename node<Value, Parameters, Box, Allocators, node_d_mem_static_tag>::type
|
||||
>(allocators.leaf_allocator, allocators.leaf_allocator);
|
||||
>::template apply(allocators.leaf_allocator, allocators.leaf_allocator);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -153,10 +153,10 @@ struct allocators<Allocator, Value, Parameters, Box, node_s_mem_dynamic_tag>
|
||||
|
||||
// create_node_variant
|
||||
|
||||
template <typename Node>
|
||||
template <typename RetNode, typename Node>
|
||||
struct create_node_variant
|
||||
{
|
||||
template <typename RetNode, typename AllocNode, typename AllocElems>
|
||||
template <typename AllocNode, typename AllocElems>
|
||||
static inline RetNode * apply(AllocNode & alloc_node, AllocElems & alloc_elems)
|
||||
{
|
||||
RetNode * p = alloc_node.allocate(1);
|
||||
@@ -203,10 +203,9 @@ struct create_node<
|
||||
apply(Allocators & allocators)
|
||||
{
|
||||
return create_node_variant<
|
||||
typename node<Value, Parameters, Box, Allocators, Tag>::type,
|
||||
static_internal_node<Value, Parameters, Box, Allocators, Tag>
|
||||
>::template apply<
|
||||
typename node<Value, Parameters, Box, Allocators, Tag>::type
|
||||
>(allocators.node_allocator, allocators.internal_node_elements_allocator);
|
||||
>::template apply(allocators.node_allocator, allocators.internal_node_elements_allocator);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -220,10 +219,9 @@ struct create_node<
|
||||
apply(Allocators & allocators)
|
||||
{
|
||||
return create_node_variant<
|
||||
typename node<Value, Parameters, Box, Allocators, Tag>::type,
|
||||
static_leaf<Value, Parameters, Box, Allocators, Tag>
|
||||
>::template apply<
|
||||
typename node<Value, Parameters, Box, Allocators, Tag>::type
|
||||
>(allocators.node_allocator, allocators.leaf_elements_allocator);
|
||||
>::template apply(allocators.node_allocator, allocators.leaf_elements_allocator);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -121,10 +121,9 @@ struct create_node<
|
||||
apply(Allocators & allocators)
|
||||
{
|
||||
return create_node_variant<
|
||||
typename node<Value, Parameters, Box, Allocators, node_s_mem_static_tag>::type,
|
||||
static_internal_node<Value, Parameters, Box, Allocators, node_s_mem_static_tag>
|
||||
>::template apply<
|
||||
typename node<Value, Parameters, Box, Allocators, node_s_mem_static_tag>::type
|
||||
>(allocators.node_allocator, allocators.node_allocator);
|
||||
>::template apply(allocators.node_allocator, allocators.node_allocator);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -138,10 +137,9 @@ struct create_node<
|
||||
apply(Allocators & allocators)
|
||||
{
|
||||
return create_node_variant<
|
||||
typename node<Value, Parameters, Box, Allocators, node_s_mem_static_tag>::type,
|
||||
static_leaf<Value, Parameters, Box, Allocators, node_s_mem_static_tag>
|
||||
>::template apply<
|
||||
typename node<Value, Parameters, Box, Allocators, node_s_mem_static_tag>::type
|
||||
>(allocators.node_allocator, allocators.node_allocator);
|
||||
>::template apply(allocators.node_allocator, allocators.node_allocator);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user