diff --git a/include/my_base.h b/include/my_base.h
index cf0835f8a1e8c984e3b9084f4083d2f2fdb61004..553dcfe2232aa30138896d33f14d0a4622512e62 100644
--- a/include/my_base.h
+++ b/include/my_base.h
@@ -193,7 +193,7 @@ enum ha_extra_function {
     begin and end of a statement.
   */
   HA_EXTRA_ATTACH_CHILDREN,
-  HA_EXTRA_DETACH_CHILDREN
+  HA_EXTRA_DETACH_CHILDREN,
   /* Inform handler that we will do a rename */
   HA_EXTRA_PREPARE_FOR_RENAME
 };
diff --git a/include/myisam.h b/include/myisam.h
index ee0bf43782bf40aace476ee4c614204f7f3c8c16..c49c094e757e2551d3994a017e4a45784a816cc0 100644
--- a/include/myisam.h
+++ b/include/myisam.h
@@ -341,7 +341,7 @@ typedef struct st_mi_sort_param
   uchar *rec_buff;
   void *wordlist, *wordptr;
   MEM_ROOT wordroot;
-  char *record;
+  uchar *record;
   MY_TMPDIR *tmpdir;
 
   /* 
diff --git a/mysys/my_getopt.c b/mysys/my_getopt.c
index d7de0d12e08911e9f57880ff51aa35f8167c84c5..796062f75b0d2c63444c3b7db6509ee8169be28a 100644
--- a/mysys/my_getopt.c
+++ b/mysys/my_getopt.c
@@ -30,7 +30,6 @@ my_error_reporter my_getopt_error_reporter= &default_reporter;
 static int findopt(char *, uint, const struct my_option **, char **);
 my_bool getopt_compare_strings(const char *, const char *, uint);
 static longlong getopt_ll(char *arg, const struct my_option *optp, int *err);
-static longlong getopt_ll_limit_value(longlong, const struct my_option *);
 static ulonglong getopt_ull(char *, const struct my_option *, int *);
 static double getopt_double(char *arg, const struct my_option *optp, int *err);
 static void init_variables(const struct my_option *options,
@@ -789,8 +788,8 @@ static longlong getopt_ll(char *arg, const struct my_option *optp, int *err)
   Returns "fixed" value.
 */
 
-static longlong getopt_ll_limit_value(longlong num, const struct my_option *optp,
-                                      bool *fix)
+longlong getopt_ll_limit_value(longlong num, const struct my_option *optp,
+                               bool *fix)
 {
   longlong old= num;
   bool adjusted= FALSE;
@@ -859,7 +858,7 @@ static ulonglong getopt_ull(char *arg, const struct my_option *optp, int *err)
 
 
 ulonglong getopt_ull_limit_value(ulonglong num, const struct my_option *optp,
-                                 bool *fix);
+                                 bool *fix)
 {
   bool adjusted= FALSE;
   ulonglong old= num;
@@ -965,25 +964,27 @@ static void init_one_value(const struct my_option *optp, uchar* *variable,
     *((my_bool*) variable)= (my_bool) value;
     break;
   case GET_INT:
-    *((int*) variable)= (int) getopt_ll_limit_value(value, optp);
+    *((int*) variable)= (int) getopt_ll_limit_value(value, optp, NULL);
     break;
   case GET_UINT:
-    *((uint*) variable)= (uint) getopt_ull_limit_value(value, optp);
+    *((uint*) variable)= (uint) getopt_ull_limit_value(value, optp, NULL);
     break;
   case GET_ENUM:
     *((uint*) variable)= (uint) value;
     break;
   case GET_LONG:
-    *((long*) variable)= (long) getopt_ll_limit_value(value, optp);
+    *((long*) variable)= (long) getopt_ll_limit_value(value, optp, NULL);
     break;
   case GET_ULONG:
-    *((ulong*) variable)= (ulong) getopt_ull_limit_value(value, optp);
+    *((ulong*) variable)= (ulong) getopt_ull_limit_value(value, optp, NULL);
     break;
   case GET_LL:
-    *((longlong*) variable)= (longlong) getopt_ll_limit_value(value, optp);
+    *((longlong*) variable)= (longlong) getopt_ll_limit_value(value, optp,
+                                                              NULL);
     break;
   case GET_ULL:
-    *((ulonglong*) variable)=  (ulonglong) getopt_ull_limit_value(value, optp);
+    *((ulonglong*) variable)=  (ulonglong) getopt_ull_limit_value(value, optp,
+                                                                  NULL);
     break;
   case GET_SET:
     *((ulonglong*) variable)=  (ulonglong) value;
diff --git a/storage/maria/ma_ft_boolean_search.c b/storage/maria/ma_ft_boolean_search.c
index e09a076ceaa8e68d12ab22d29a5e88fbc20cf0d4..28305d9be4719c9d941f98550130c9c568492a0a 100644
--- a/storage/maria/ma_ft_boolean_search.c
+++ b/storage/maria/ma_ft_boolean_search.c
@@ -555,8 +555,8 @@ FT_INFO * maria_ft_init_boolean_search(MARIA_HA *info, uint keynr, uchar *query,
   ftb->list=(FTB_WORD **)alloc_root(&ftb->mem_root,
                                      sizeof(FTB_WORD *)*ftb->queue.elements);
   memcpy(ftb->list, ftb->queue.root+1, sizeof(FTB_WORD *)*ftb->queue.elements);
-  qsort2(ftb->list, ftb->queue.elements, sizeof(FTB_WORD *),
-                              (qsort2_cmp)FTB_WORD_cmp_list, ftb->charset);
+  my_qsort2(ftb->list, ftb->queue.elements, sizeof(FTB_WORD *),
+            (qsort2_cmp)FTB_WORD_cmp_list, ftb->charset);
   if (ftb->queue.elements<2) ftb->with_scan &= ~FTB_FLAG_TRUNC;
   ftb->state=READY;
   return ftb;
diff --git a/storage/maria/ma_ft_nlq_search.c b/storage/maria/ma_ft_nlq_search.c
index 18b101f0e0553fa527d447e4243d60895d2df77e..afee14c22b5832ca97e0cc167e020d57a1e0d7a6 100644
--- a/storage/maria/ma_ft_nlq_search.c
+++ b/storage/maria/ma_ft_nlq_search.c
@@ -295,7 +295,8 @@ FT_INFO *maria_ft_init_nlq_search(MARIA_HA *info, uint keynr, uchar *query,
 	    &dptr, left_root_right);
 
   if (flags & FT_SORTED)
-    qsort2(dlist->doc, dlist->ndocs, sizeof(FT_DOC), (qsort2_cmp)&FT_DOC_cmp, 0);
+    my_qsort2(dlist->doc, dlist->ndocs, sizeof(FT_DOC),
+              (qsort2_cmp)&FT_DOC_cmp, 0);
 
 err:
   delete_tree(&aio.dtree);
diff --git a/storage/maria/ma_sort.c b/storage/maria/ma_sort.c
index 874d6fcd6e0029575ea4898a9724a67752147b62..64f451982a9caca9dcaaec3949797ba6e2f7519f 100644
--- a/storage/maria/ma_sort.c
+++ b/storage/maria/ma_sort.c
@@ -653,8 +653,8 @@ static int write_keys(MARIA_SORT_PARAM *info, register uchar **sort_keys,
   uint sort_length=info->key_length;
   DBUG_ENTER("write_keys");
 
-  qsort2((uchar*) sort_keys,count,sizeof(uchar*),(qsort2_cmp) info->key_cmp,
-         info);
+  my_qsort2((uchar*) sort_keys,count,sizeof(uchar*),(qsort2_cmp) info->key_cmp,
+            info);
   if (!my_b_inited(tempfile) &&
       open_cached_file(tempfile, my_tmpdir(info->tmpdir), "ST",
                        DISK_BUFFER_SIZE, info->sort_info->param->myf_rw))
@@ -696,8 +696,8 @@ static int write_keys_varlen(MARIA_SORT_PARAM *info,
   int err;
   DBUG_ENTER("write_keys_varlen");
 
-  qsort2((uchar*) sort_keys,count,sizeof(uchar*),(qsort2_cmp) info->key_cmp,
-         info);
+  my_qsort2((uchar*) sort_keys,count,sizeof(uchar*),(qsort2_cmp) info->key_cmp,
+            info);
   if (!my_b_inited(tempfile) &&
       open_cached_file(tempfile, my_tmpdir(info->tmpdir), "ST",
                        DISK_BUFFER_SIZE, info->sort_info->param->myf_rw))
@@ -740,8 +740,8 @@ static int write_index(MARIA_SORT_PARAM *info,
 {
   DBUG_ENTER("write_index");
 
-  qsort2((uchar*) sort_keys,(size_t) count,sizeof(uchar*),
-        (qsort2_cmp) info->key_cmp,info);
+  my_qsort2((uchar*) sort_keys,(size_t) count,sizeof(uchar*),
+            (qsort2_cmp) info->key_cmp,info);
   while (count--)
   {
     if ((*info->key_write)(info, *sort_keys++))
diff --git a/storage/myisam/mi_check.c b/storage/myisam/mi_check.c
index 4ba84ab6ca8cd46389eeb4022aa4fdc637958a46..a3a92f345e11715fbccf227266d5e916fd61317f 100644
--- a/storage/myisam/mi_check.c
+++ b/storage/myisam/mi_check.c
@@ -1429,7 +1429,7 @@ int chk_data_link(HA_CHECK *param, MI_INFO *info,int extend)
     then recrate all indexes.
 */
 
-static int mi_drop_all_indexes(MI_CHECK *param, MI_INFO *info, my_bool force)
+static int mi_drop_all_indexes(HA_CHECK *param, MI_INFO *info, my_bool force)
 {
   MYISAM_SHARE *share= info->s;
   MI_STATE_INFO *state= &share->state;
@@ -2671,14 +2671,14 @@ int mi_repair_parallel(HA_CHECK *param, register MI_INFO *info,
   /*
     Quick repair (not touching data file, rebuilding indexes):
     {
-      Read  cache is (MI_CHECK *param)->read_cache using info->dfile.
+      Read  cache is (HA_CHECK *param)->read_cache using info->dfile.
     }
 
     Non-quick repair (rebuilding data file and indexes):
     {
       Master thread:
 
-        Read  cache is (MI_CHECK *param)->read_cache using info->dfile.
+        Read  cache is (HA_CHECK *param)->read_cache using info->dfile.
         Write cache is (MI_INFO   *info)->rec_cache  using new_file.
 
       Slave threads: