summaryrefslogtreecommitdiff
path: root/algparam.h
diff options
context:
space:
mode:
authorweidai <weidai@57ff6487-cd31-0410-9ec3-f628ee90f5f0>2007-04-16 00:26:05 +0000
committerweidai <weidai@57ff6487-cd31-0410-9ec3-f628ee90f5f0>2007-04-16 00:26:05 +0000
commitb9f1344030cf8349ff1a9c5997cbdac9e4d82992 (patch)
treefb01be21385c44d11adee4f9df608bb26ed453b3 /algparam.h
parent00a70ef87d03e13798d08beed4be4ab39766cd24 (diff)
downloadcryptopp-b9f1344030cf8349ff1a9c5997cbdac9e4d82992.tar.gz
ICC workaround
git-svn-id: svn://svn.code.sf.net/p/cryptopp/code/trunk/c5@304 57ff6487-cd31-0410-9ec3-f628ee90f5f0
Diffstat (limited to 'algparam.h')
-rw-r--r--algparam.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/algparam.h b/algparam.h
index 6a24298..d090333 100644
--- a/algparam.h
+++ b/algparam.h
@@ -130,6 +130,7 @@ public:
GetValueHelperClass<T,BASE> &Assignable()
{
+#ifndef __INTEL_COMPILER // ICL 9.1 workaround: Intel compiler copies the vTable pointer for some reason
if (m_getValueNames)
((*reinterpret_cast<std::string *>(m_pValue) += "ThisObject:") += typeid(T).name()) += ';';
if (!m_found && strncmp(m_name, "ThisObject:", 11) == 0 && strcmp(m_name+11, typeid(T).name()) == 0)
@@ -138,6 +139,7 @@ public:
*reinterpret_cast<T *>(m_pValue) = *m_pObject;
m_found = true;
}
+#endif
return *this;
}