summaryrefslogtreecommitdiff
path: root/factory.h
diff options
context:
space:
mode:
Diffstat (limited to 'factory.h')
-rw-r--r--factory.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/factory.h b/factory.h
index 50e4313a..ad8a84f0 100644
--- a/factory.h
+++ b/factory.h
@@ -84,8 +84,10 @@ template <class AbstractClass, class ConcreteClass, int instance = 0>
struct RegisterDefaultFactoryFor {
RegisterDefaultFactoryFor(const char *name=NULL)
{
+ // BCB2006 workaround
+ std::string n = name ? std::string(name) : std::string(ConcreteClass::StaticAlgorithmName());
ObjectFactoryRegistry<AbstractClass, instance>::Registry().
- RegisterFactory(name ? name : ConcreteClass::StaticAlgorithmName(), new DefaultObjectFactory<AbstractClass, ConcreteClass>);
+ RegisterFactory(n, new DefaultObjectFactory<AbstractClass, ConcreteClass>);
}};
template <class SchemeClass>