summaryrefslogtreecommitdiff
path: root/gf2n.h
diff options
context:
space:
mode:
authorweidai <weidai@57ff6487-cd31-0410-9ec3-f628ee90f5f0>2004-06-20 17:56:15 +0000
committerweidai <weidai@57ff6487-cd31-0410-9ec3-f628ee90f5f0>2004-06-20 17:56:15 +0000
commitc0aa5cf0c4df55a542a3f5c060fb840da4bc0b2d (patch)
tree2499058561875821704789052533e0c6c2c79891 /gf2n.h
parent443398ff862b10dde571782ff8a1a068ad95e159 (diff)
downloadcryptopp-c0aa5cf0c4df55a542a3f5c060fb840da4bc0b2d.tar.gz
port to CodeWarrior 8.3
git-svn-id: svn://svn.code.sf.net/p/cryptopp/code/trunk/c5@175 57ff6487-cd31-0410-9ec3-f628ee90f5f0
Diffstat (limited to 'gf2n.h')
-rw-r--r--gf2n.h13
1 files changed, 7 insertions, 6 deletions
diff --git a/gf2n.h b/gf2n.h
index b1cfba4..e50576d 100644
--- a/gf2n.h
+++ b/gf2n.h
@@ -236,12 +236,6 @@ private:
SecWordBlock reg;
};
-CRYPTOPP_DLL_TEMPLATE_CLASS AbstractGroup<PolynomialMod2>;
-CRYPTOPP_DLL_TEMPLATE_CLASS AbstractRing<PolynomialMod2>;
-CRYPTOPP_DLL_TEMPLATE_CLASS AbstractEuclideanDomain<PolynomialMod2>;
-CRYPTOPP_DLL_TEMPLATE_CLASS EuclideanDomainOf<PolynomialMod2>;
-CRYPTOPP_DLL_TEMPLATE_CLASS QuotientRing<EuclideanDomainOf<PolynomialMod2> >;
-
//! GF(2^n) with Polynomial Basis
class CRYPTOPP_DLL GF2NP : public QuotientRing<EuclideanDomainOf<PolynomialMod2> >
{
@@ -353,6 +347,13 @@ inline CryptoPP::PolynomialMod2 operator/(const CryptoPP::PolynomialMod2 &a, con
//!
inline CryptoPP::PolynomialMod2 operator%(const CryptoPP::PolynomialMod2 &a, const CryptoPP::PolynomialMod2 &b) {return a.Modulo(b);}
+// CodeWarrior 8 workaround: put these template instantiations after overloaded operator declarations
+CRYPTOPP_DLL_TEMPLATE_CLASS AbstractGroup<PolynomialMod2>;
+CRYPTOPP_DLL_TEMPLATE_CLASS AbstractRing<PolynomialMod2>;
+CRYPTOPP_DLL_TEMPLATE_CLASS AbstractEuclideanDomain<PolynomialMod2>;
+CRYPTOPP_DLL_TEMPLATE_CLASS EuclideanDomainOf<PolynomialMod2>;
+CRYPTOPP_DLL_TEMPLATE_CLASS QuotientRing<EuclideanDomainOf<PolynomialMod2> >;
+
NAMESPACE_END
NAMESPACE_BEGIN(std)