Hi,
I got an error using soci with clang (version 3.1 (branches/release_31
156809)). In my opinion core/type-holder.h does not follow C++ standard.
According to C++03 - 14.2/4,
"When the name of a member template specialization appears after . or ->
in a postfix-expression, or after nested-name-specifier in a
qualified-id, and the postfix-expression or qualified-id explicitly
depends on a template-parameter (14.6.2), the member template name must
be prefixed by the keyword template. Otherwise the name is assumed to
name a non-template."
Attached patch solves the problem for me.
Regards,
Olaf
--- core/type-holder.h~ 2012-05-16 11:49:50.854141418 +0200
+++ core/type-holder.h 2012-05-16 11:50:00.917141686 +0200
@@ -33,7 +33,7 @@ public:
type_holder<T>* p = dynamic_cast<type_holder<T> *>(this);
if (p)
{
- return p->value<T>();
+ return p->template value<T>();
}
else
{
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers can respond. Discussions
will include endpoint security, mobile security and the latest in malware
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Soci-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/soci-users