summaryrefslogtreecommitdiff
path: root/extra
diff options
context:
space:
mode:
authorunknown <konstantin@mysql.com>2005-06-15 02:57:23 +0400
committerunknown <konstantin@mysql.com>2005-06-15 02:57:23 +0400
commit0b5700c086e07ddb3f173203c05170372d853a20 (patch)
tree624e36fddf115093afb5b112031ccbad1300b092 /extra
parent970e20b7fe8eb9070dc5350785a6bd0c7df96f04 (diff)
downloadmariadb-git-0b5700c086e07ddb3f173203c05170372d853a20.tar.gz
gcc 2.96 fixes (workarounds for compiler bugs in namespace handling)
extra/yassl/include/yassl_int.hpp: gcc 2.96 fixes extra/yassl/include/yassl_types.hpp: gcc 2.96 fixes
Diffstat (limited to 'extra')
-rw-r--r--extra/yassl/include/yassl_int.hpp7
-rw-r--r--extra/yassl/include/yassl_types.hpp11
2 files changed, 16 insertions, 2 deletions
diff --git a/extra/yassl/include/yassl_int.hpp b/extra/yassl/include/yassl_int.hpp
index d3f7754f074..60a78a3970e 100644
--- a/extra/yassl/include/yassl_int.hpp
+++ b/extra/yassl/include/yassl_int.hpp
@@ -164,7 +164,12 @@ private:
// openSSL bignum
struct BIGNUM {
- Integer int_;
+ /*
+ gcc 2.96 fix: because of two Integer classes (yaSSL::Integer and
+ TaoCrypt::Integer), we need to explicitly state the namespace
+ here to let gcc 2.96 deduce the correct type.
+ */
+ yaSSL::Integer int_;
void assign(const byte* b, uint s) { int_.assign(b,s); }
};
diff --git a/extra/yassl/include/yassl_types.hpp b/extra/yassl/include/yassl_types.hpp
index d1d3fb829de..01b82d95039 100644
--- a/extra/yassl/include/yassl_types.hpp
+++ b/extra/yassl/include/yassl_types.hpp
@@ -445,6 +445,15 @@ const opaque master_label[MASTER_LABEL_SZ + 1] = "master secret";
const opaque key_label [KEY_LABEL_SZ + 1] = "key expansion";
-} // naemspace
+} // namespace
+
+#if __GNUC__ == 2 && __GNUC_MINOR__ <= 96
+/*
+ gcc 2.96 bails out because of two declarations of byte: yaSSL::byte and
+ TaoCrypt::byte. TODO: define global types.hpp and move the declaration of
+ 'byte' there.
+*/
+using yaSSL::byte;
+#endif
#endif // yaSSL_TYPES_HPP