]> pd.if.org Git - pdclib/blobdiff - functions/stdlib/qsort.c
Merged branch stdio_rewrite back into trunk.
[pdclib] / functions / stdlib / qsort.c
index d12776993988278b304d625a8f0b604f0b4c988d..c37760f546fa47a089b913cff22d47e084f7d13f 100644 (file)
@@ -19,7 +19,7 @@
 */
 
 /* Wrapper for _PDCLIB_memswp protects against multiple argument evaluation. */
-static inline void memswp( char * i, char * j, unsigned int size )
+static inline void memswp( char * i, char * j, size_t size )
 {
     _PDCLIB_memswp( i, j, size );
 }
@@ -41,14 +41,14 @@ void qsort( void * base, size_t nmemb, size_t size, int (*compar)( const void *,
 {
     char * i;
     char * j;
-    size_t thresh     = T * size;
-    char * base_      = (char *)base;
-    char * limit      = base_ + nmemb * size;
+    _PDCLIB_size_t thresh = T * size;
+    char * base_          = (char *)base;
+    char * limit          = base_ + nmemb * size;
     PREPARE_STACK;
 
     for ( ;; )
     {
-        if ( limit - base_ > thresh ) /* QSort for more than T elements. */
+        if ( (size_t)( limit - base_ ) > thresh ) /* QSort for more than T elements. */
         {
             /* We work from second to last - first will be pivot element. */
             i = base_ + size;