From 78c8ea7cb9547f89fc808434002fe1281497fac6 Mon Sep 17 00:00:00 2001 From: Viktor Szakats Date: Mon, 8 Feb 2010 15:54:38 +0000 Subject: [PATCH] 2010-02-08 16:49 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * include/hbdefs.h + Readded HB_U8 and HB_I8. Currently mapped to HB_BYTE/HB_CHAR, but it should be used where 8-bitness of a char is a requirement. F.e. when writing/reading to/from files. + HB_CHAR changed from 'char' to 'signed char'. This is brand new type, not yet used in Harbour code, so it's safe. For char with non-guaranteed signedness, ANSI type 'char' should be used. * HB_UCHAR is now a synonym for HB_BYTE. It's now also legacy. * HB_SCHAR is now a synonym for HB_CHAR. It's now also legacy. ; TODO: Replace all HB_SCHAR with HB_CHAR and HB_UCHAR with HB_BYTE, and move the old types to compatibility status. * ChangeLog ! Fixed date in my today's entries. --- harbour/ChangeLog | 25 +++++++++++++++++++++---- harbour/include/hbdefs.h | 18 +++++++++++++----- 2 files changed, 34 insertions(+), 9 deletions(-) diff --git a/harbour/ChangeLog b/harbour/ChangeLog index 0e98a67218..36cb52007c 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -17,7 +17,24 @@ past entries belonging to author(s): Viktor Szakats. */ -2010-02-07 14:30 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) +2010-02-08 16:49 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) + * include/hbdefs.h + + Readded HB_U8 and HB_I8. Currently mapped to HB_BYTE/HB_CHAR, + but it should be used where 8-bitness of a char is a requirement. + F.e. when writing/reading to/from files. + + HB_CHAR changed from 'char' to 'signed char'. This is brand + new type, not yet used in Harbour code, so it's safe. + For char with non-guaranteed signedness, ANSI type 'char' + should be used. + * HB_UCHAR is now a synonym for HB_BYTE. It's now also legacy. + * HB_SCHAR is now a synonym for HB_CHAR. It's now also legacy. + ; TODO: Replace all HB_SCHAR with HB_CHAR and HB_UCHAR with HB_BYTE, + and move the old types to compatibility status. + + * ChangeLog + ! Fixed date in my today's entries. + +2010-02-08 14:30 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/pp/ppcore.c * src/pp/hbpp.c * src/vm/macro.c @@ -184,7 +201,7 @@ * contrib/hbct/remove.c * USHORT -> HB_USHORT (except where BYTE was used in OS-specific context) -2010-02-07 12:48 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) +2010-02-08 12:48 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbbmcdx/bmdbfcdx.c * contrib/hbbmcdx/hbbmcdx.h * contrib/hbbtree/hb_btree.h @@ -261,7 +278,7 @@ * contrib/gtwvg/wvggui.h - Deleted unused structures (using USHORT). -2010-02-07 10:32 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) +2010-02-08 10:32 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * include/hbdefs.h ! Fixed typo when restructuring types causing no HB_MAXINT type in some cases. @@ -277,7 +294,7 @@ * contrib/xhb/txtline.c * USHORT, int -> HB_SIZE -2010-02-07 02:02 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) +2010-02-08 02:02 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/pp/ppcore.c * src/vm/macro.c * src/vm/runner.c diff --git a/harbour/include/hbdefs.h b/harbour/include/hbdefs.h index bb43cce52a..a972f05f23 100644 --- a/harbour/include/hbdefs.h +++ b/harbour/include/hbdefs.h @@ -194,19 +194,27 @@ typedef int HB_BOOL; typedef unsigned char HB_BYTE; -typedef char HB_CHAR; -typedef signed char HB_SCHAR; -typedef unsigned char HB_UCHAR; +typedef signed char HB_CHAR; typedef short HB_SHORT; typedef unsigned short HB_USHORT; +/* typedef long HB_LONG; */ +/* typedef unsigned long HB_ULONG; */ typedef int HB_INT; typedef unsigned int HB_UINT; -/* typedef double HB_DOUBLE; */ -typedef unsigned long HB_SIZE; /* TOFIX: Currently ULONG, to be changed to 'long' */ +typedef unsigned long HB_SIZE; /* TOFIX: Currently 'unsigned long', to be changed to 'long' */ typedef long HB_ISIZ; /* TOFIX: Change to HB_SIZE, after HB_SIZE has been converted to 'long'. TEMPORARY type. */ typedef void * HB_PTRVAL; /* TOFIX */ +/* typedef double HB_DOUBLE; */ /* typedef HB_POINTER; */ /* TOFIX */ +/* legacy. TODO: Change these to new types in codebase */ +typedef HB_BYTE HB_UCHAR; /* legacy */ +typedef HB_CHAR HB_SCHAR; /* legacy */ + +/* Guaranteed 8-bit types */ +typedef HB_BYTE HB_U8; +typedef HB_CHAR HB_I8; + #if ! defined( HB_LEGACY_TYPES_OFF ) #if ! defined( HB_DONT_DEFINE_BASIC_TYPES )