]> mj.ucw.cz Git - libucw.git/blobdiff - ucw/strtonum.c
Build: Silenced few -Wimplicit-fallthrough warnings.
[libucw.git] / ucw / strtonum.c
index 1d6cd1cd29ae6476df62b3719a4943b8f0bcab9c..4e1be9b520cab27144a9866a1a08093ffe709a2a 100644 (file)
@@ -7,12 +7,12 @@
  *     of the GNU Lesser General Public License.
  */
 
-#include "ucw/lib.h"
-#include "ucw/string.h"
-#include "ucw/chartype.h"
-#include "ucw/strtonum.h"
+#include <ucw/lib.h>
+#include <ucw/string.h>
+#include <ucw/chartype.h>
+#include <ucw/strtonum.h>
 
-static uns detect_base(const char **pp, const uns flags)
+static uint detect_base(const char **pp, const uint flags)
 {
   if ((flags & STN_BASES0) && **pp == '0')
     {
@@ -58,7 +58,7 @@ static uns detect_base(const char **pp, const uns flags)
   return 0;
 }
 
-static const char *str_to_num_init(const char **pp, const uns flags, uns *sign, uns *base)
+static const char *str_to_num_init(const char **pp, const uint flags, uint *sign, uint *base)
 {
   ASSERT(*pp);
 
@@ -84,24 +84,37 @@ static const char *str_to_num_init(const char **pp, const uns flags, uns *sign,
   return err;
 }
 
-static inline uns get_digit(const uns c)
+static inline uint get_digit(const uint c)
 {
   if (c <= '9')
     return c - '0';
   else
     {
       const int a = c & 0xDF;
-      unsigned d = a - 'A';
+      uint d = a - 'A';
       d &= 0xFF;
       d += 10;
       return d;
     }
 }
 
-#define STN_TYPE uns
-#define STN_SUFFIX uns
-#include "ucw/strtonum-gen.h"
+#define STN_TYPE uint
+#define STN_SUFFIX uint
+#include <ucw/strtonum-gen.h>
+
+#define STN_TYPE u32
+#define STN_SUFFIX u32
+#include <ucw/strtonum-gen.h>
+
+#define STN_TYPE u64
+#define STN_SUFFIX u64
+#include <ucw/strtonum-gen.h>
 
 #define STN_TYPE uintmax_t
 #define STN_SUFFIX uintmax
-#include "ucw/strtonum-gen.h"
+#include <ucw/strtonum-gen.h>
+
+// FIXME: For backward compatibility, will be removed soon
+#define STN_TYPE uns
+#define STN_SUFFIX uns
+#include <ucw/strtonum-gen.h>