summaryrefslogtreecommitdiff
path: root/storage
diff options
context:
space:
mode:
authorJoerg Bruehe <joerg@mysql.com>2009-09-08 15:38:40 +0200
committerJoerg Bruehe <joerg@mysql.com>2009-09-08 15:38:40 +0200
commitdeab1e9ce3dc073927f57ed62bc0fdcd2c663cc3 (patch)
tree4f25c3eb7d54e9e85ad27872d592dc8c9d70f425 /storage
parent29d0fa12f7770b67c4df00ab1b4de13e0bfdf8bb (diff)
downloadmariadb-git-deab1e9ce3dc073927f57ed62bc0fdcd2c663cc3.tar.gz
Some fixes to make 5.4.2-beta compile on the less common
platforms like AIX, HP-UX, and Solaris 8. All these are upmerges from 5.1 which came too late to be included when 5.4.2-beta was cloned, so they were applied during the build phase.
Diffstat (limited to 'storage')
-rw-r--r--storage/innobase/handler/i_s.cc18
-rw-r--r--storage/innobase/include/btr0cur.h2
-rw-r--r--storage/innobase/include/trx0types.h2
-rw-r--r--storage/innobase/include/univ.i3
4 files changed, 14 insertions, 11 deletions
diff --git a/storage/innobase/handler/i_s.cc b/storage/innobase/handler/i_s.cc
index c0d488d1c49..524fe696de2 100644
--- a/storage/innobase/handler/i_s.cc
+++ b/storage/innobase/handler/i_s.cc
@@ -69,14 +69,16 @@ do { \
#define STRUCT_FLD(name, value) value
#endif
-static const ST_FIELD_INFO END_OF_ST_FIELD_INFO =
- {STRUCT_FLD(field_name, NULL),
- STRUCT_FLD(field_length, 0),
- STRUCT_FLD(field_type, MYSQL_TYPE_NULL),
- STRUCT_FLD(value, 0),
- STRUCT_FLD(field_flags, 0),
- STRUCT_FLD(old_name, ""),
- STRUCT_FLD(open_method, SKIP_OPEN_TABLE)};
+/* Don't use a static const variable here, as some C++ compilers (notably
+HPUX aCC: HP ANSI C++ B3910B A.03.65) can't handle it. */
+#define END_OF_ST_FIELD_INFO \
+ {STRUCT_FLD(field_name, NULL), \
+ STRUCT_FLD(field_length, 0), \
+ STRUCT_FLD(field_type, MYSQL_TYPE_NULL), \
+ STRUCT_FLD(value, 0), \
+ STRUCT_FLD(field_flags, 0), \
+ STRUCT_FLD(old_name, ""), \
+ STRUCT_FLD(open_method, SKIP_OPEN_TABLE)}
/*
Use the following types mapping:
diff --git a/storage/innobase/include/btr0cur.h b/storage/innobase/include/btr0cur.h
index b2d43ae3254..8e66dd50783 100644
--- a/storage/innobase/include/btr0cur.h
+++ b/storage/innobase/include/btr0cur.h
@@ -618,7 +618,7 @@ enum btr_cur_method {
hash_node, and might be necessary to
update */
BTR_CUR_BINARY, /*!< success using the binary search */
- BTR_CUR_INSERT_TO_IBUF, /*!< performed the intended insert to
+ BTR_CUR_INSERT_TO_IBUF /*!< performed the intended insert to
the insert buffer */
};
diff --git a/storage/innobase/include/trx0types.h b/storage/innobase/include/trx0types.h
index 08cc9622d02..e312efd0b50 100644
--- a/storage/innobase/include/trx0types.h
+++ b/storage/innobase/include/trx0types.h
@@ -70,7 +70,7 @@ typedef struct trx_named_savept_struct trx_named_savept_t;
enum trx_rb_ctx {
RB_NONE = 0, /*!< no rollback */
RB_NORMAL, /*!< normal rollback */
- RB_RECOVERY, /*!< rolling back an incomplete transaction,
+ RB_RECOVERY /*!< rolling back an incomplete transaction,
in crash recovery */
};
diff --git a/storage/innobase/include/univ.i b/storage/innobase/include/univ.i
index 6bce6dd765e..023a6c9cd89 100644
--- a/storage/innobase/include/univ.i
+++ b/storage/innobase/include/univ.i
@@ -408,7 +408,8 @@ it is read. */
/* Minimize cache-miss latency by moving data at addr into a cache before
it is read or written. */
# define UNIV_PREFETCH_RW(addr) __builtin_prefetch(addr, 1, 3)
-#elif defined(__SUNPRO_C) || defined(__SUNPRO_CC)
+/* Sun Studio includes sun_prefetch.h as of version 5.9 */
+#elif (defined(__SUNPRO_C) && __SUNPRO_C >= 0x590) || (defined(__SUNPRO_CC) && __SUNPRO_CC >= 0x590)
# include <sun_prefetch.h>
#if __SUNPRO_C >= 0x550
# undef UNIV_INTERN