List:Commits« Previous MessageNext Message »
From:Tatjana A Nuernberg Date:August 1 2007 9:24am
Subject:bk commit into 5.1 tree (tnurnberg:1.2578) BUG#10776
View as plain text  
Below is the list of changes that have just been committed into a local
5.1 repository of tnurnberg. When tnurnberg does a push these changes will
be propagated to the main repository and, within 24 hours after the
push, to the public repository.
For information on how to access the public repository
see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html

ChangeSet@stripped, 2007-08-01 09:24:01+02:00, tnurnberg@stripped +7 -0
  Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2
  
  5.1 specific fixes so cluster will build on AIX (with IBM compiler)

  config/ac-macros/ha_ndbcluster.m4@stripped, 2007-08-01 09:23:54+02:00,
tnurnberg@stripped +7 -0
    Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (1)
    
    build NDB binaries as static on AIX. because that actually
    *works*.
    
    when building dynamic, with the IBM compiler (xlC_r), and
    the build breaks on AIX due to missing symbols
    (__vec__delete2 et al.), try adding -lhC to the Makefile.

  storage/ndb/src/mgmclient/Makefile.am@stripped, 2007-08-01 09:23:54+02:00,
tnurnberg@stripped +1 -1
    Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (2)
    
    fix path

  storage/ndb/src/ndbapi/NdbScanOperation.cpp@stripped, 2007-08-01 09:23:54+02:00,
tnurnberg@stripped +1 -1
    Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (3)
    
    __align is a keyword in xlC_r

  storage/ndb/test/ndbapi/testIndexStat.cpp@stripped, 2007-08-01 09:23:54+02:00,
tnurnberg@stripped +15 -15
    Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (4)
    
    gptr is now uchar*
    
    template can't be static on xlC_r?

  storage/ndb/test/ndbapi/test_event_merge.cpp@stripped, 2007-08-01 09:23:55+02:00,
tnurnberg@stripped +17 -17
    Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (4)
    
    gptr is now uchar*

  storage/ndb/test/run-test/main.cpp@stripped, 2007-08-01 09:23:55+02:00,
tnurnberg@stripped +18 -18
    Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (4)
    
    gptr is now uchar*

  storage/ndb/test/src/NDBT_Test.cpp@stripped, 2007-08-01 09:23:55+02:00,
tnurnberg@stripped +10 -10
    Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (4)
    
    gptr is now uchar*

diff -Nrup a/config/ac-macros/ha_ndbcluster.m4 b/config/ac-macros/ha_ndbcluster.m4
--- a/config/ac-macros/ha_ndbcluster.m4	2007-05-08 10:15:46 +02:00
+++ b/config/ac-macros/ha_ndbcluster.m4	2007-08-01 09:23:54 +02:00
@@ -277,6 +277,13 @@ AC_DEFUN([MYSQL_SETUP_NDBCLUSTER], [
     ndb_bin_am_ldflags=""
   fi
 
+  # building dynamic breaks on AIX. (If you want to try it and get unresolved
+  # __vec__delete2 and some such, try linking against libhC.)
+  case "$host_os" in
+    aix3.* | aix4.0.* | aix4.1.*) ;;
+    *) ndb_bin_am_ldflags="-static";;
+  esac
+
   # libndbclient versioning when linked with GNU ld.
   if $LD --version 2>/dev/null|grep -q GNU; then
    
NDB_LD_VERSION_SCRIPT="-Wl,--version-script=\$(top_builddir)/storage/ndb/src/libndb.ver"
diff -Nrup a/storage/ndb/src/mgmclient/Makefile.am b/storage/ndb/src/mgmclient/Makefile.am
--- a/storage/ndb/src/mgmclient/Makefile.am	2007-08-01 04:59:34 +02:00
+++ b/storage/ndb/src/mgmclient/Makefile.am	2007-08-01 09:23:54 +02:00
@@ -36,7 +36,7 @@ INCLUDES += -I$(top_srcdir)/storage/ndb/
 LDADD_LOC = $(noinst_LTLIBRARIES) \
 	    ../common/portlib/libportlib.la \
             @readline_link@ \
-            $(top_builddir)/ndb/src/libndbclient.la \
+            $(top_builddir)/storage/ndb/src/libndbclient.la \
             $(top_builddir)/dbug/libdbug.a \
             $(top_builddir)/mysys/libmysys.a \
             $(top_builddir)/strings/libmystrings.a \
diff -Nrup a/storage/ndb/src/ndbapi/NdbScanOperation.cpp
b/storage/ndb/src/ndbapi/NdbScanOperation.cpp
--- a/storage/ndb/src/ndbapi/NdbScanOperation.cpp	2007-05-10 11:59:33 +02:00
+++ b/storage/ndb/src/ndbapi/NdbScanOperation.cpp	2007-08-01 09:23:54 +02:00
@@ -1202,7 +1202,7 @@ NdbIndexScanOperation::setBound(const Nd
     Uint32 tupKeyLen = theTupKeyLen;
     union {
       Uint32 tempData[2000];
-      Uint64 __align;
+      Uint64 __my_align;
     };
     Uint64 *valPtr;
     if(remaining > totalLen && aligned && nobytes){
diff -Nrup a/storage/ndb/test/ndbapi/testIndexStat.cpp
b/storage/ndb/test/ndbapi/testIndexStat.cpp
--- a/storage/ndb/test/ndbapi/testIndexStat.cpp	2006-12-23 20:33:31 +01:00
+++ b/storage/ndb/test/ndbapi/testIndexStat.cpp	2007-08-01 09:23:54 +02:00
@@ -1210,8 +1210,8 @@ struct V_rir {
   static double data(const Range& range) { return (double)range.errpct; }
 };
 
-template static void computestat<Key, V_rpk>(Stat& stat);
-template static void computestat<Range, V_rir>(Stat& stat);
+template void computestat<Key, V_rpk>(Stat& stat);
+template void computestat<Range, V_rir>(Stat& stat);
 
 static Stat g_stat_rpk; // summaries over loops
 static Stat g_stat_rir;
@@ -1297,43 +1297,43 @@ my_long_options[] =
 {
   NDB_STD_OPTS("testIndexStat"),
   { "loglevel", 1001, "Logging level in this program 0-3 (default 0)",
-    (gptr*)&g_opts.loglevel, (gptr*)&g_opts.loglevel, 0,
+    (uchar **)&g_opts.loglevel, (uchar **)&g_opts.loglevel, 0,
     GET_INT, REQUIRED_ARG, 0, 0, 0, 0, 0, 0 },
   { "seed", 1002, "Random seed (0=loop number, default -1=random)",
-    (gptr*)&g_opts.seed, (gptr*)&g_opts.seed, 0,
+    (uchar **)&g_opts.seed, (uchar **)&g_opts.seed, 0,
     GET_INT, REQUIRED_ARG, -1, 0, 0, 0, 0, 0 },
   { "loop", 1003, "Number of test loops (default 1, 0=forever)",
-    (gptr*)&g_opts.loop, (gptr*)&g_opts.loop, 0,
+    (uchar **)&g_opts.loop, (uchar **)&g_opts.loop, 0,
     GET_INT, REQUIRED_ARG, 1, 0, 0, 0, 0, 0 },
   { "rows", 1004, "Number of rows (default 100000)",
-    (gptr*)&g_opts.rows, (gptr*)&g_opts.rows, 0,
+    (uchar **)&g_opts.rows, (uchar **)&g_opts.rows, 0,
     GET_UINT, REQUIRED_ARG, 100000, 0, 0, 0, 0, 0 },
   { "ops", 1005, "Number of index scans per loop (default 1000)",
-    (gptr*)&g_opts.ops, (gptr*)&g_opts.ops, 0,
+    (uchar **)&g_opts.ops, (uchar **)&g_opts.ops, 0,
     GET_UINT, REQUIRED_ARG, 1000, 0, 0, 0, 0, 0 },
   { "dupkeys", 1006, "Pct records per key (min 100, default 1000)",
-    (gptr*)&g_opts.dupkeys, (gptr*)&g_opts.dupkeys, 0,
+    (uchar **)&g_opts.dupkeys, (uchar **)&g_opts.dupkeys, 0,
     GET_UINT, REQUIRED_ARG, 1000, 0, 0, 0, 0, 0 },
   { "scanpct", 1007, "Preferred max pct of total rows per scan (default 5)",
-    (gptr*)&g_opts.scanpct, (gptr*)&g_opts.scanpct, 0,
+    (uchar **)&g_opts.scanpct, (uchar **)&g_opts.scanpct, 0,
     GET_UINT, REQUIRED_ARG, 5, 0, 0, 0, 0, 0 },
   { "nullkeys", 1008, "Pct nulls in each key attribute (default 10)",
-    (gptr*)&g_opts.nullkeys, (gptr*)&g_opts.nullkeys, 0,
+    (uchar **)&g_opts.nullkeys, (uchar **)&g_opts.nullkeys, 0,
     GET_UINT, REQUIRED_ARG, 10, 0, 0, 0, 0, 0 },
   { "eqscans", 1009, "Pct scans for partial/full equality (default 50)",
-    (gptr*)&g_opts.eqscans, (gptr*)&g_opts.eqscans, 0,
+    (uchar **)&g_opts.eqscans, (uchar **)&g_opts.eqscans, 0,
     GET_UINT, REQUIRED_ARG, 50, 0, 0, 0, 0, 0 },
   { "dupscans", 1010, "Pct scans using same bounds (default 10)",
-    (gptr*)&g_opts.dupscans, (gptr*)&g_opts.dupscans, 0,
+    (uchar **)&g_opts.dupscans, (uchar **)&g_opts.dupscans, 0,
     GET_UINT, REQUIRED_ARG, 10, 0, 0, 0, 0, 0 },
   { "keeptable", 1011, "Use existing table and data if any and do not drop",
-    (gptr*)&g_opts.keeptable, (gptr*)&g_opts.keeptable, 0,
+    (uchar **)&g_opts.keeptable, (uchar **)&g_opts.keeptable, 0,
     GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
   { "no-extra-checks", 1012, "Omit expensive consistency checks",
-    (gptr*)&g_opts.nochecks, (gptr*)&g_opts.nochecks, 0,
+    (uchar **)&g_opts.nochecks, (uchar **)&g_opts.nochecks, 0,
     GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
   { "abort-on-error", 1013, "Dump core on any error",
-    (gptr*)&g_opts.abort, (gptr*)&g_opts.abort, 0,
+    (uchar **)&g_opts.abort, (uchar **)&g_opts.abort, 0,
     GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
   { 0, 0, 0,
     0, 0, 0,
diff -Nrup a/storage/ndb/test/ndbapi/test_event_merge.cpp
b/storage/ndb/test/ndbapi/test_event_merge.cpp
--- a/storage/ndb/test/ndbapi/test_event_merge.cpp	2006-12-23 20:20:27 +01:00
+++ b/storage/ndb/test/ndbapi/test_event_merge.cpp	2007-08-01 09:23:55 +02:00
@@ -2184,57 +2184,57 @@ my_long_options[] =
 {
   NDB_STD_OPTS("test_event_merge"),
   { "abort-on-error", 1001, "Do abort() on any error",
-    (gptr*)&g_opts.abort_on_error, (gptr*)&g_opts.abort_on_error, 0,
+    (uchar **)&g_opts.abort_on_error, (uchar **)&g_opts.abort_on_error, 0,
     GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
   { "loglevel", 1002, "Logging level in this program 0-3 (default 0)",
-    (gptr*)&g_opts.loglevel, (gptr*)&g_opts.loglevel, 0,
+    (uchar **)&g_opts.loglevel, (uchar **)&g_opts.loglevel, 0,
     GET_INT, REQUIRED_ARG, 0, 0, 0, 0, 0, 0 },
   { "loop", 1003, "Number of test loops (default 5, 0=forever)",
-    (gptr*)&g_opts.loop, (gptr*)&g_opts.loop, 0,
+    (uchar **)&g_opts.loop, (uchar **)&g_opts.loop, 0,
     GET_INT, REQUIRED_ARG, 5, 0, 0, 0, 0, 0 },
   { "maxops", 1004, "Approx number of PK operations per table (default 1000)",
-    (gptr*)&g_opts.maxops, (gptr*)&g_opts.maxops, 0,
+    (uchar **)&g_opts.maxops, (uchar **)&g_opts.maxops, 0,
     GET_UINT, REQUIRED_ARG, 1000, 0, 0, 0, 0, 0 },
   { "maxpk", 1005, "Number of different PK values (default 10, max 1000)",
-    (gptr*)&g_opts.maxpk, (gptr*)&g_opts.maxpk, 0,
+    (uchar **)&g_opts.maxpk, (uchar **)&g_opts.maxpk, 0,
     GET_UINT, REQUIRED_ARG, 10, 0, 0, 0, 0, 0 },
   { "maxtab", 1006, "Number of tables (default 10, max 100)",
-    (gptr*)&g_opts.maxtab, (gptr*)&g_opts.maxtab, 0,
+    (uchar **)&g_opts.maxtab, (uchar **)&g_opts.maxtab, 0,
     GET_INT, REQUIRED_ARG, 10, 0, 0, 0, 0, 0 },
   { "no-blobs", 1007, "Omit blob attributes (5.0: true)",
-    (gptr*)&g_opts.no_blobs, (gptr*)&g_opts.no_blobs, 0,
+    (uchar **)&g_opts.no_blobs, (uchar **)&g_opts.no_blobs, 0,
     GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
   { "no-implicit-nulls", 1008, "Insert must include all attrs"
                                " i.e. no implicit NULLs",
-    (gptr*)&g_opts.no_implicit_nulls, (gptr*)&g_opts.no_implicit_nulls, 0,
+    (uchar **)&g_opts.no_implicit_nulls, (uchar **)&g_opts.no_implicit_nulls, 0,
     GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
   { "no-missing-update", 1009, "Update must include all non-PK attrs",
-    (gptr*)&g_opts.no_missing_update, (gptr*)&g_opts.no_missing_update, 0,
+    (uchar **)&g_opts.no_missing_update, (uchar **)&g_opts.no_missing_update, 0,
     GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
   { "no-multiops", 1010, "Allow only 1 operation per commit",
-    (gptr*)&g_opts.no_multiops, (gptr*)&g_opts.no_multiops, 0,
+    (uchar **)&g_opts.no_multiops, (uchar **)&g_opts.no_multiops, 0,
     GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
   { "no-nulls", 1011, "Create no NULL values",
-    (gptr*)&g_opts.no_nulls, (gptr*)&g_opts.no_nulls, 0,
+    (uchar **)&g_opts.no_nulls, (uchar **)&g_opts.no_nulls, 0,
     GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
   { "one-blob", 1012, "Only one blob attribute (default 2)",
-    (gptr*)&g_opts.one_blob, (gptr*)&g_opts.one_blob, 0,
+    (uchar **)&g_opts.one_blob, (uchar **)&g_opts.one_blob, 0,
     GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
   { "opstring", 1013, "Operations to run e.g. idiucdc (c is commit) or"
                       " iuuc:uudc (the : separates loops)",
-    (gptr*)&g_opts.opstring, (gptr*)&g_opts.opstring, 0,
+    (uchar **)&g_opts.opstring, (uchar **)&g_opts.opstring, 0,
     GET_STR_ALLOC, REQUIRED_ARG, 0, 0, 0, 0, 0, 0 },
   { "seed", 1014, "Random seed (0=loop number, default -1=random)",
-    (gptr*)&g_opts.seed, (gptr*)&g_opts.seed, 0,
+    (uchar **)&g_opts.seed, (uchar **)&g_opts.seed, 0,
     GET_INT, REQUIRED_ARG, -1, 0, 0, 0, 0, 0 },
   { "separate-events", 1015, "Do not combine events per GCI (5.0: true)",
-    (gptr*)&g_opts.separate_events, (gptr*)&g_opts.separate_events, 0,
+    (uchar **)&g_opts.separate_events, (uchar **)&g_opts.separate_events, 0,
     GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
   { "tweak", 1016, "Whatever the source says",
-    (gptr*)&g_opts.tweak, (gptr*)&g_opts.tweak, 0,
+    (uchar **)&g_opts.tweak, (uchar **)&g_opts.tweak, 0,
     GET_UINT, REQUIRED_ARG, 0, 0, 0, 0, 0, 0 },
   { "use-table", 1017, "Use existing tables",
-    (gptr*)&g_opts.use_table, (gptr*)&g_opts.use_table, 0,
+    (uchar **)&g_opts.use_table, (uchar **)&g_opts.use_table, 0,
     GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
   { 0, 0, 0,
     0, 0, 0,
diff -Nrup a/storage/ndb/test/run-test/main.cpp b/storage/ndb/test/run-test/main.cpp
--- a/storage/ndb/test/run-test/main.cpp	2007-02-16 21:44:35 +01:00
+++ b/storage/ndb/test/run-test/main.cpp	2007-08-01 09:23:55 +02:00
@@ -77,60 +77,60 @@ my_bool opt_core;
 static struct my_option g_options[] =
 {
   { "help", '?', "Display this help and exit.", 
-    (gptr*) &g_help, (gptr*) &g_help,
+    (uchar **) &g_help, (uchar **) &g_help,
     0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 }, 
   { "version", 'V', "Output version information and exit.", 0, 0, 0, 
     GET_NO_ARG, NO_ARG, 0, 0, 0, 0, 0, 0 }, 
   { "clusters", 256, "Cluster",
-    (gptr*) &g_clusters, (gptr*) &g_clusters,
+    (uchar **) &g_clusters, (uchar **) &g_clusters,
     0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
   { "replicate", 1024, "replicate",
-    (gptr*) &g_dummy, (gptr*) &g_dummy,
+    (uchar **) &g_dummy, (uchar **) &g_dummy,
     0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
   { "log-file", 256, "log-file",
-    (gptr*) &g_log_filename, (gptr*) &g_log_filename,
+    (uchar **) &g_log_filename, (uchar **) &g_log_filename,
     0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
   { "testcase-file", 'f', "testcase-file",
-    (gptr*) &g_test_case_filename, (gptr*) &g_test_case_filename,
+    (uchar **) &g_test_case_filename, (uchar **) &g_test_case_filename,
     0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
   { "report-file", 'r', "report-file",
-    (gptr*) &g_report_filename, (gptr*) &g_report_filename,
+    (uchar **) &g_report_filename, (uchar **) &g_report_filename,
     0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
   { "basedir", 256, "Base path",
-    (gptr*) &g_basedir, (gptr*) &g_basedir,
+    (uchar **) &g_basedir, (uchar **) &g_basedir,
     0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
   { "baseport", 256, "Base port",
-    (gptr*) &g_baseport, (gptr*) &g_baseport,
+    (uchar **) &g_baseport, (uchar **) &g_baseport,
     0, GET_INT, REQUIRED_ARG, g_baseport, 0, 0, 0, 0, 0},
   { "prefix", 256, "mysql install dir",
-    (gptr*) &g_prefix, (gptr*) &g_prefix,
+    (uchar **) &g_prefix, (uchar **) &g_prefix,
     0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
   { "verbose", 'v', "Verbosity",
-    (gptr*) &g_verbosity, (gptr*) &g_verbosity,
+    (uchar **) &g_verbosity, (uchar **) &g_verbosity,
     0, GET_INT, REQUIRED_ARG, g_verbosity, 0, 0, 0, 0, 0},
   { "configure", 256, "configure",
-    (gptr*) &g_do_setup, (gptr*) &g_do_setup,
+    (uchar **) &g_do_setup, (uchar **) &g_do_setup,
     0, GET_INT, REQUIRED_ARG, g_do_setup, 0, 0, 0, 0, 0 },
   { "deploy", 256, "deploy",
-    (gptr*) &g_do_deploy, (gptr*) &g_do_deploy,
+    (uchar **) &g_do_deploy, (uchar **) &g_do_deploy,
     0, GET_INT, REQUIRED_ARG, g_do_deploy, 0, 0, 0, 0, 0 },
   { "sshx", 256, "sshx",
-    (gptr*) &g_do_sshx, (gptr*) &g_do_sshx,
+    (uchar **) &g_do_sshx, (uchar **) &g_do_sshx,
     0, GET_INT, REQUIRED_ARG, g_do_sshx, 0, 0, 0, 0, 0 },
   { "start", 256, "start",
-    (gptr*) &g_do_start, (gptr*) &g_do_start,
+    (uchar **) &g_do_start, (uchar **) &g_do_start,
     0, GET_INT, REQUIRED_ARG, g_do_start, 0, 0, 0, 0, 0 },
   { "fqpn", 256, "Fully qualified path-names ",
-    (gptr*) &g_fqpn, (gptr*) &g_fqpn,
+    (uchar **) &g_fqpn, (uchar **) &g_fqpn,
     0, GET_INT, REQUIRED_ARG, g_fqpn, 0, 0, 0, 0, 0 },
   { "default-ports", 256, "Use default ports when possible",
-    (gptr*) &g_default_ports, (gptr*) &g_default_ports,
+    (uchar **) &g_default_ports, (uchar **) &g_default_ports,
     0, GET_INT, REQUIRED_ARG, g_default_ports, 0, 0, 0, 0, 0 },
   { "mode", 256, "Mode 0=interactive 1=regression 2=bench",
-    (gptr*) &g_mode, (gptr*) &g_mode,
+    (uchar **) &g_mode, (uchar **) &g_mode,
     0, GET_INT, REQUIRED_ARG, g_mode, 0, 0, 0, 0, 0 },
   { "quit", 256, "Quit before starting tests",
-    (gptr*) &g_mode, (gptr*) &g_do_quit,
+    (uchar **) &g_mode, (uchar **) &g_do_quit,
     0, GET_BOOL, NO_ARG, g_do_quit, 0, 0, 0, 0, 0 },
   { 0, 0, 0, 0, 0, 0, GET_NO_ARG, NO_ARG, 0, 0, 0, 0, 0, 0}
 };
diff -Nrup a/storage/ndb/test/src/NDBT_Test.cpp b/storage/ndb/test/src/NDBT_Test.cpp
--- a/storage/ndb/test/src/NDBT_Test.cpp	2007-04-17 16:50:05 +02:00
+++ b/storage/ndb/test/src/NDBT_Test.cpp	2007-08-01 09:23:55 +02:00
@@ -1195,35 +1195,35 @@ static struct my_option my_long_options[
 {
   NDB_STD_OPTS(""),
   { "print", OPT_PRINT, "Print execution tree",
-    (gptr*) &opt_print, (gptr*) &opt_print, 0,
+    (uchar **) &opt_print, (uchar **) &opt_print, 0,
     GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
   { "print_html", OPT_PRINT_HTML, "Print execution tree in html table format",
-    (gptr*) &opt_print_html, (gptr*) &opt_print_html, 0,
+    (uchar **) &opt_print_html, (uchar **) &opt_print_html, 0,
     GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
   { "print_cases", OPT_PRINT_CASES, "Print list of test cases",
-    (gptr*) &opt_print_cases, (gptr*) &opt_print_cases, 0,
+    (uchar **) &opt_print_cases, (uchar **) &opt_print_cases, 0,
     GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
   { "records", 'r', "Number of records", 
-    (gptr*) &opt_records, (gptr*) &opt_records, 0,
+    (uchar **) &opt_records, (uchar **) &opt_records, 0,
     GET_INT, REQUIRED_ARG, 1000, 0, 0, 0, 0, 0 },
   { "loops", 'l', "Number of loops",
-    (gptr*) &opt_loops, (gptr*) &opt_loops, 0,
+    (uchar **) &opt_loops, (uchar **) &opt_loops, 0,
     GET_INT, REQUIRED_ARG, 5, 0, 0, 0, 0, 0 },
   { "seed", 1024, "Random seed",
-    (gptr*) &opt_seed, (gptr*) &opt_seed, 0,
+    (uchar **) &opt_seed, (uchar **) &opt_seed, 0,
     GET_INT, REQUIRED_ARG, 0, 0, 0, 0, 0, 0 },
   { "testname", 'n', "Name of test to run",
-    (gptr*) &opt_testname, (gptr*) &opt_testname, 0,
+    (uchar **) &opt_testname, (uchar **) &opt_testname, 0,
     GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0 },
   { "remote_mgm", 'm',
     "host:port to mgmsrv of remote cluster",
-    (gptr*) &opt_remote_mgm, (gptr*) &opt_remote_mgm, 0,
+    (uchar **) &opt_remote_mgm, (uchar **) &opt_remote_mgm, 0,
     GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0 },
   { "timer", 't', "Print execution time",
-    (gptr*) &opt_timer, (gptr*) &opt_timer, 0,
+    (uchar **) &opt_timer, (uchar **) &opt_timer, 0,
     GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
   { "verbose", 'v', "Print verbose status",
-    (gptr*) &opt_verbose, (gptr*) &opt_verbose, 0,
+    (uchar **) &opt_verbose, (uchar **) &opt_verbose, 0,
     GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
   { 0, 0, 0, 0, 0, 0, GET_NO_ARG, NO_ARG, 0, 0, 0, 0, 0, 0}
 };
Thread
bk commit into 5.1 tree (tnurnberg:1.2578) BUG#10776Tatjana A Nuernberg1 Aug