2023-09-13 12:35 UTC-0500 Ron Pinkas <ronpinkas/AT/gmail/com>
+ xHarbour-to-Harbour.txt
+ New text file borrowed from: https://wiki.xailer.com/doku.php?id=en:migrar.de.xharbour.a.harbour
/*
Thanks to Jose F. Gimenez
*/
* xHarbourBuilder/xHarbour-SQLRDD/source/compat.c
* xHarbourBuilder/xHarbour-SQLRDD/source/compat.h
* xHarbourBuilder/xHarbour-SQLRDD/source/exprobjs.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/exprrelation.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/exprtransl.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/firebird.c
* xHarbourBuilder/xHarbour-SQLRDD/source/firebird3.c
* xHarbourBuilder/xHarbour-SQLRDD/source/oraclip.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/oraedit.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlact.c
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlconnection.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlex1.c
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlex1ora.c
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlex2.c
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlex2ora.c
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlex3.c
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlex3ora.c
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlfirebird.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlfirebird3.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlgen1.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlmaria.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlodbc.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlpgs.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlrdd.hbx
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlrdd0.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlrdd1.c
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlrdd2.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlsrodbc.c
* xHarbourBuilder/xHarbour-SQLRDD/source/utils.prg
! Fixes by Przemyslaw Czerpak to compile with Harbour
/*
Thanks to Przemyslaw Czerpak
*/
On Wednesday, September 13, 2023 at 12:47:04 PM UTC-5, Ron Pinkas wrote:2023-09-13 13:07 UTC-0500 Ron Pinkas <ronpinkas/AT/gmail/com>
2023-09-13 12:35 UTC-0500 Ron Pinkas <ronpinkas/AT/gmail/com>
+ xHarbour-to-Harbour.txt
+ New text file borrowed from: https://wiki.xailer.com/doku.php?id=en:migrar.de.xharbour.a.harbour
/*
Thanks to Jose F. Gimenez
*/
* xHarbourBuilder/xHarbour-SQLRDD/source/compat.c2023-09-13 12:58 UTC-0500 Ron Pinkas <ronpinkas/AT/gmail/com>
* xHarbourBuilder/xHarbour-SQLRDD/source/compat.h
* xHarbourBuilder/xHarbour-SQLRDD/source/exprobjs.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/exprrelation.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/exprtransl.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/firebird.c
* xHarbourBuilder/xHarbour-SQLRDD/source/firebird3.c
* xHarbourBuilder/xHarbour-SQLRDD/source/oraclip.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/oraedit.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlact.c
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlconnection.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlex1.c
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlex1ora.c
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlex2.c
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlex2ora.c
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlex3.c
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlex3ora.c
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlfirebird.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlfirebird3.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlgen1.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlmaria.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlodbc.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlpgs.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlrdd.hbx
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlrdd0.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlrdd1.c
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlrdd2.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlsrodbc.c
* xHarbourBuilder/xHarbour-SQLRDD/source/utils.prg
! Fixes by Przemyslaw Czerpak to compile with Harbour
/*
Thanks to Przemyslaw Czerpak
*/
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlmy.prg
* Missed from last commit
On Wednesday, September 13, 2023 at 1:08:32 PM UTC-5, Ron Pinkas wrote:2023-09-13 14:08 UTC-0500 Ron Pinkas <ronpinkas/AT/gmail/com>
On Wednesday, September 13, 2023 at 1:01:38 PM UTC-5, Ron Pinkas wrote:
On Wednesday, September 13, 2023 at 12:47:04 PM UTC-5, Ron Pinkas wrote:
2023-09-13 12:35 UTC-0500 Ron Pinkas <ronpinkas/AT/gmail/com>
+ xHarbour-to-Harbour.txt
+ New text file borrowed from: https://wiki.xailer.com/doku.php?id=en:migrar.de.xharbour.a.harbour
/*
Thanks to Jose F. Gimenez
*/
2023-09-13 13:46 UTC-0500 Ron Pinkas <ronpinkas/AT/gmail/com>2023-09-13 13:07 UTC-0500 Ron Pinkas <ronpinkas/AT/gmail/com>* xHarbourBuilder/xHarbour-SQLRDD/source/compat.c2023-09-13 12:58 UTC-0500 Ron Pinkas <ronpinkas/AT/gmail/com>
* xHarbourBuilder/xHarbour-SQLRDD/source/compat.h
* xHarbourBuilder/xHarbour-SQLRDD/source/exprobjs.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/exprrelation.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/exprtransl.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/firebird.c
* xHarbourBuilder/xHarbour-SQLRDD/source/firebird3.c
* xHarbourBuilder/xHarbour-SQLRDD/source/oraclip.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/oraedit.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlact.c
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlconnection.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlex1.c
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlex1ora.c
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlex2.c
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlex2ora.c
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlex3.c
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlex3ora.c
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlfirebird.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlfirebird3.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlgen1.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlmaria.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlodbc.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlpgs.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlrdd.hbx
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlrdd0.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlrdd1.c
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlrdd2.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlsrodbc.c
* xHarbourBuilder/xHarbour-SQLRDD/source/utils.prg
! Fixes by Przemyslaw Czerpak to compile with Harbour
/*
Thanks to Przemyslaw Czerpak
*/
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlmy.prg
* Missed from last commit
* xHarbourBuilder/xHarbour-SQLRDD/source/Makefile
* xHarbourBuilder/xHarbour-SQLRDD/source/compat.ch
* xHarbourBuilder/xHarbour-SQLRDD/source/config-netware.h
* xHarbourBuilder/xHarbour-SQLRDD/source/config-os2.h
* xHarbourBuilder/xHarbour-SQLRDD/source/config-win.h
* xHarbourBuilder/xHarbour-SQLRDD/source/dbug.h
* xHarbourBuilder/xHarbour-SQLRDD/source/errmsg.h
* xHarbourBuilder/xHarbour-SQLRDD/source/exprparser.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/exprsimpl.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/exprudf.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/firebird.ch
* xHarbourBuilder/xHarbour-SQLRDD/source/firebird.h
* xHarbourBuilder/xHarbour-SQLRDD/source/firebird3.ch
* xHarbourBuilder/xHarbour-SQLRDD/source/hbmk2_bison.hbs
* xHarbourBuilder/xHarbour-SQLRDD/source/hbsql.ch
* xHarbourBuilder/xHarbour-SQLRDD/source/hbsql.h
* xHarbourBuilder/xHarbour-SQLRDD/source/ib_util.h
* xHarbourBuilder/xHarbour-SQLRDD/source/ibase.h
* xHarbourBuilder/xHarbour-SQLRDD/source/ibase3.h
* xHarbourBuilder/xHarbour-SQLRDD/source/iberror.h
* xHarbourBuilder/xHarbour-SQLRDD/source/iberror3.h
* xHarbourBuilder/xHarbour-SQLRDD/source/libpq-fe.h
* xHarbourBuilder/xHarbour-SQLRDD/source/linux.sh
* xHarbourBuilder/xHarbour-SQLRDD/source/linux64.sh
* xHarbourBuilder/xHarbour-SQLRDD/source/m_ctype.h
* xHarbourBuilder/xHarbour-SQLRDD/source/m_string.h
* xHarbourBuilder/xHarbour-SQLRDD/source/msg.ch
* xHarbourBuilder/xHarbour-SQLRDD/source/my_alloc.h
* xHarbourBuilder/xHarbour-SQLRDD/source/my_dbug.h
* xHarbourBuilder/xHarbour-SQLRDD/source/my_getopt.h
* xHarbourBuilder/xHarbour-SQLRDD/source/my_global.h
* xHarbourBuilder/xHarbour-SQLRDD/source/my_list.h
* xHarbourBuilder/xHarbour-SQLRDD/source/my_pthread.h
* xHarbourBuilder/xHarbour-SQLRDD/source/my_sys.h
* xHarbourBuilder/xHarbour-SQLRDD/source/mysql.c
* xHarbourBuilder/xHarbour-SQLRDD/source/mysql.ch
* xHarbourBuilder/xHarbour-SQLRDD/source/mysql.h
* xHarbourBuilder/xHarbour-SQLRDD/source/mysql_com.h
* xHarbourBuilder/xHarbour-SQLRDD/source/mysql_embed.h
* xHarbourBuilder/xHarbour-SQLRDD/source/mysql_time.h
* xHarbourBuilder/xHarbour-SQLRDD/source/mysql_version.h
* Changes in LF/CRLF from Przemek modifications
+ xHarbourBuilder/xHarbour-SQLRDD/H32.bat
+ xHarbourBuilder/xHarbour-SQLRDD/SQLRDD.lib.hbp
+ Added by Przemek for Harbour support
On Wednesday, September 13, 2023 at 1:01:38 PM UTC-5, Ron Pinkas wrote:2023-09-13 13:46 UTC-0500 Ron Pinkas <ronpinkas/AT/gmail/com>
On Wednesday, September 13, 2023 at 12:47:04 PM UTC-5, Ron Pinkas wrote:
2023-09-13 12:35 UTC-0500 Ron Pinkas <ronpinkas/AT/gmail/com>
+ xHarbour-to-Harbour.txt
+ New text file borrowed from: https://wiki.xailer.com/doku.php?id=en:migrar.de.xharbour.a.harbour
/*
Thanks to Jose F. Gimenez
*/
2023-09-13 13:07 UTC-0500 Ron Pinkas <ronpinkas/AT/gmail/com>* xHarbourBuilder/xHarbour-SQLRDD/source/compat.c2023-09-13 12:58 UTC-0500 Ron Pinkas <ronpinkas/AT/gmail/com>
* xHarbourBuilder/xHarbour-SQLRDD/source/compat.h
* xHarbourBuilder/xHarbour-SQLRDD/source/exprobjs.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/exprrelation.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/exprtransl.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/firebird.c
* xHarbourBuilder/xHarbour-SQLRDD/source/firebird3.c
* xHarbourBuilder/xHarbour-SQLRDD/source/oraclip.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/oraedit.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlact.c
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlconnection.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlex1.c
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlex1ora.c
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlex2.c
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlex2ora.c
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlex3.c
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlex3ora.c
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlfirebird.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlfirebird3.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlgen1.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlmaria.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlodbc.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlpgs.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlrdd.hbx
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlrdd0.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlrdd1.c
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlrdd2.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlsrodbc.c
* xHarbourBuilder/xHarbour-SQLRDD/source/utils.prg
! Fixes by Przemyslaw Czerpak to compile with Harbour
/*
Thanks to Przemyslaw Czerpak
*/
* xHarbourBuilder/xHarbour-SQLRDD/source/sqlmy.prg
* Missed from last commit
* xHarbourBuilder/xHarbour-SQLRDD/source/Makefile
* xHarbourBuilder/xHarbour-SQLRDD/source/compat.ch
* xHarbourBuilder/xHarbour-SQLRDD/source/config-netware.h
* xHarbourBuilder/xHarbour-SQLRDD/source/config-os2.h
* xHarbourBuilder/xHarbour-SQLRDD/source/config-win.h
* xHarbourBuilder/xHarbour-SQLRDD/source/dbug.h
* xHarbourBuilder/xHarbour-SQLRDD/source/errmsg.h
* xHarbourBuilder/xHarbour-SQLRDD/source/exprparser.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/exprsimpl.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/exprudf.prg
* xHarbourBuilder/xHarbour-SQLRDD/source/firebird.ch
* xHarbourBuilder/xHarbour-SQLRDD/source/firebird.h
* xHarbourBuilder/xHarbour-SQLRDD/source/firebird3.ch
* xHarbourBuilder/xHarbour-SQLRDD/source/hbmk2_bison.hbs
* xHarbourBuilder/xHarbour-SQLRDD/source/hbsql.ch
* xHarbourBuilder/xHarbour-SQLRDD/source/hbsql.h
* xHarbourBuilder/xHarbour-SQLRDD/source/ib_util.h
* xHarbourBuilder/xHarbour-SQLRDD/source/ibase.h
* xHarbourBuilder/xHarbour-SQLRDD/source/ibase3.h
* xHarbourBuilder/xHarbour-SQLRDD/source/iberror.h
* xHarbourBuilder/xHarbour-SQLRDD/source/iberror3.h
* xHarbourBuilder/xHarbour-SQLRDD/source/libpq-fe.h
* xHarbourBuilder/xHarbour-SQLRDD/source/linux.sh
* xHarbourBuilder/xHarbour-SQLRDD/source/linux64.sh
* xHarbourBuilder/xHarbour-SQLRDD/source/m_ctype.h
* xHarbourBuilder/xHarbour-SQLRDD/source/m_string.h
* xHarbourBuilder/xHarbour-SQLRDD/source/msg.ch
* xHarbourBuilder/xHarbour-SQLRDD/source/my_alloc.h
* xHarbourBuilder/xHarbour-SQLRDD/source/my_dbug.h
* xHarbourBuilder/xHarbour-SQLRDD/source/my_getopt.h
* xHarbourBuilder/xHarbour-SQLRDD/source/my_global.h
* xHarbourBuilder/xHarbour-SQLRDD/source/my_list.h
* xHarbourBuilder/xHarbour-SQLRDD/source/my_pthread.h
* xHarbourBuilder/xHarbour-SQLRDD/source/my_sys.h
* xHarbourBuilder/xHarbour-SQLRDD/source/mysql.c
* xHarbourBuilder/xHarbour-SQLRDD/source/mysql.ch
* xHarbourBuilder/xHarbour-SQLRDD/source/mysql.h
* xHarbourBuilder/xHarbour-SQLRDD/source/mysql_com.h
* xHarbourBuilder/xHarbour-SQLRDD/source/mysql_embed.h
* xHarbourBuilder/xHarbour-SQLRDD/source/mysql_time.h
* xHarbourBuilder/xHarbour-SQLRDD/source/mysql_version.h
* Changes in LF/CRLF from Przemek modifications
Ron, this commit just made lost some corrections that Culik made in SQLRDD\source\sqlsrodbc.c
See the details in this commit: https://github.com/xHarbour-org/xharbour/commit/4200465de20b2e1f3713c33216fa4c212fb3f9a8
On Wednesday, September 13, 2023 at 3:40:16 PM UTC-5, Eduardo Motta wrote:
Ron, this commit just made lost some corrections that Culik made in SQLRDD\source\sqlsrodbc.c
See the details in this commit: https://github.com/xHarbour-org/xharbour/commit/4200465de20b2e1f3713c33216fa4c212fb3f9a8I am sorry I tried to review but I can't understand these changes - they make no sense to me - Luiz will have to reapply them and preferably with a note in the main ChangeLog file so such changes can be properly traced.
I would also prefer to avoid mixed usage of HB_ISIZ along with HB_SIZE which looks like a typo.
Variable and CONSTANTS should have proper descriptive name like HB_SIGNED_SIZE and HB_UNSIGNED_SIZE - Also the code we now have in hbdefs.h to me appear total nightmare - I wonder if anyone knows if HB_SIZE is signed or unsigned, when. and why:
/* Harbour size type */
#if defined( HB_OS_WIN_64 )
# if defined( HB_SIZE_SIGNED )
typedef LONGLONG HB_SIZE;
# else
typedef ULONGLONG HB_SIZE; /* TODO: Currently 'unsigned', to be changed 'signed' */
# endif
typedef LONGLONG HB_ISIZ; /* TODO: Change to HB_SIZE, after HB_SIZE has been converted to signed type. TEMPORARY type. */
typedef ULONGLONG HB_USIZ; /* TEMPORARY type. Do not use it. */
#else
# if defined( HB_SIZE_SIGNED )
// typedef HB_LONG HB_SIZE;
typedef LONG HB_SIZE;
# else
// typedef HB_ULONG HB_SIZE; /* TODO: Currently 'unsigned', to be changed 'signed' */
typedef ULONG HB_SIZE; /* TODO: Currently 'unsigned', to be changed 'signed' */
# endif
typedef LONG HB_ISIZ; /* TODO: Change to HB_SIZE, after HB_SIZE has been converted to signed type. TEMPORARY type. */
typedef ULONG HB_USIZ; /* TEMPORARY type. Do not use it. */
// typedef HB_LONG HB_ISIZ; /* TODO: Change to HB_SIZE, after HB_SIZE has been converted to signed type. TEMPORARY type. */
// typedef HB_ULONG HB_USIZ; /* TEMPORARY type. Do not use it. */
#endif
Ron, I made the pull request. When possible, please review.
Thanks
Em quarta-feira, 13 de setembro de 2023 às 18:32:04 UTC-3, Ron Pinkas escreveu:
On Wednesday, September 13, 2023 at 3:40:16 PM UTC-5, Eduardo Motta wrote:
Ron, this commit just made lost some corrections that Culik made in SQLRDD\source\sqlsrodbc.c
See the details in this commit: https://github.com/xHarbour-org/xharbour/commit/4200465de20b2e1f3713c33216fa4c212fb3f9a8I am sorry I tried to review but I can't understand these changes - they make no sense to me - Luiz will have to reapply them and preferably with a note in the main ChangeLog file so such changes can be properly traced.
I would also prefer to avoid mixed usage of HB_ISIZ along with HB_SIZE which looks like a typo.
Variable and CONSTANTS should have proper descriptive name like HB_SIGNED_SIZE and HB_UNSIGNED_SIZE - Also the code we now have in hbdefs.h to me appear total nightmare - I wonder if anyone knows if HB_SIZE is signed or unsigned, when. and why:
/* Harbour size type */
#if defined( HB_OS_WIN_64 )
# if defined( HB_SIZE_SIGNED )
typedef LONGLONG HB_SIZE;
# else
typedef ULONGLONG HB_SIZE; /* TODO: Currently 'unsigned', to be changed 'signed' */
# endif
typedef LONGLONG HB_ISIZ; /* TODO: Change to HB_SIZE, after HB_SIZE has been converted to signed type. TEMPORARY type. */
typedef ULONGLONG HB_USIZ; /* TEMPORARY type. Do not use it. */
#else
# if defined( HB_SIZE_SIGNED )
// typedef HB_LONG HB_SIZE;
typedef LONG HB_SIZE;
# else
// typedef HB_ULONG HB_SIZE; /* TODO: Currently 'unsigned', to be changed 'signed' */
typedef ULONG HB_SIZE; /* TODO: Currently 'unsigned', to be changed 'signed' */
# endif
typedef LONG HB_ISIZ; /* TODO: Change to HB_SIZE, after HB_SIZE has been converted to signed type. TEMPORARY type. */
typedef ULONG HB_USIZ; /* TEMPORARY type. Do not use it. */
// typedef HB_LONG HB_ISIZ; /* TODO: Change to HB_SIZE, after HB_SIZE has been converted to signed type. TEMPORARY type. */
// typedef HB_ULONG HB_USIZ; /* TEMPORARY type. Do not use it. */
#endif
On Thursday, September 14, 2023 at 7:44:36 AM UTC-5, Eduardo Motta wrote:type than why not base on ptrdiff_t and name it something like HB_PTRDIFF, which is far more descriptive? Finally, we have to ask ourselves WHY should we even have a SIGNED SIZE type?
Ron, I made the pull request. When possible, please review.
Thanks
Em quarta-feira, 13 de setembro de 2023 às 18:32:04 UTC-3, Ron Pinkas escreveu:
On Wednesday, September 13, 2023 at 3:40:16 PM UTC-5, Eduardo Motta wrote:
Ron, this commit just made lost some corrections that Culik made in SQLRDD\source\sqlsrodbc.c
See the details in this commit: https://github.com/xHarbour-org/xharbour/commit/4200465de20b2e1f3713c33216fa4c212fb3f9a8I am sorry I tried to review but I can't understand these changes - they make no sense to me - Luiz will have to reapply them and preferably with a note in the main ChangeLog file so such changes can be properly traced.
I would also prefer to avoid mixed usage of HB_ISIZ along with HB_SIZE which looks like a typo.
Variable and CONSTANTS should have proper descriptive name like HB_SIGNED_SIZE and HB_UNSIGNED_SIZE - Also the code we now have in hbdefs.h to me appear total nightmare - I wonder if anyone knows if HB_SIZE is signed or unsigned, when. and why:
Thanks, I merged it, but I hope someone will take it upon themselves to cleanup this issue of HB_SIZE/HB_ISIZ./* Harbour size type */
#if defined( HB_OS_WIN_64 )
# if defined( HB_SIZE_SIGNED )
typedef LONGLONG HB_SIZE;
# else
typedef ULONGLONG HB_SIZE; /* TODO: Currently 'unsigned', to be changed 'signed' */
# endif
typedef LONGLONG HB_ISIZ; /* TODO: Change to HB_SIZE, after HB_SIZE has been converted to signed type. TEMPORARY type. */
typedef ULONGLONG HB_USIZ; /* TEMPORARY type. Do not use it. */
#else
# if defined( HB_SIZE_SIGNED )
// typedef HB_LONG HB_SIZE;
typedef LONG HB_SIZE;
# else
// typedef HB_ULONG HB_SIZE; /* TODO: Currently 'unsigned', to be changed 'signed' */
typedef ULONG HB_SIZE; /* TODO: Currently 'unsigned', to be changed 'signed' */
# endif
typedef LONG HB_ISIZ; /* TODO: Change to HB_SIZE, after HB_SIZE has been converted to signed type. TEMPORARY type. */
typedef ULONG HB_USIZ; /* TEMPORARY type. Do not use it. */
// typedef HB_LONG HB_ISIZ; /* TODO: Change to HB_SIZE, after HB_SIZE has been converted to signed type. TEMPORARY type. */
// typedef HB_ULONG HB_USIZ; /* TEMPORARY type. Do not use it. */
#endif
We have to decide and have CLEAR documentation and self descriptive Variable names, especially for types.
AFAIK all ANSI C Compilers implement size_t which already accounts for 32/64 and n*x LP64 vs Windows LLP64, on all platforms, so why do we have to reinvent the wheel?
if we prefer our HB_* types then why isn't HB_SIZE simply a size_t? ,If we do want a SIGNED HB_SIZE than why not something more self descriptive than HB_ISIZ? F.e. why not something much clearer like HB_SIGNED_SIZE? And if we do require signed size
On Thursday, September 14, 2023 at 7:44:36 AM UTC-5, Eduardo Motta wrote:type than why not base on ptrdiff_t and name it something like HB_PTRDIFF, which is far more descriptive? Finally, we have to ask ourselves WHY should we even have a SIGNED SIZE type?
Ron, I made the pull request. When possible, please review.
Thanks
Em quarta-feira, 13 de setembro de 2023 às 18:32:04 UTC-3, Ron Pinkas escreveu:
On Wednesday, September 13, 2023 at 3:40:16 PM UTC-5, Eduardo Motta wrote:
Ron, this commit just made lost some corrections that Culik made in SQLRDD\source\sqlsrodbc.c
See the details in this commit: https://github.com/xHarbour-org/xharbour/commit/4200465de20b2e1f3713c33216fa4c212fb3f9a8I am sorry I tried to review but I can't understand these changes - they make no sense to me - Luiz will have to reapply them and preferably with a note in the main ChangeLog file so such changes can be properly traced.
I would also prefer to avoid mixed usage of HB_ISIZ along with HB_SIZE which looks like a typo.
Variable and CONSTANTS should have proper descriptive name like HB_SIGNED_SIZE and HB_UNSIGNED_SIZE - Also the code we now have in hbdefs.h to me appear total nightmare - I wonder if anyone knows if HB_SIZE is signed or unsigned, when. and why:
Thanks, I merged it, but I hope someone will take it upon themselves to cleanup this issue of HB_SIZE/HB_ISIZ./* Harbour size type */
#if defined( HB_OS_WIN_64 )
# if defined( HB_SIZE_SIGNED )
typedef LONGLONG HB_SIZE;
# else
typedef ULONGLONG HB_SIZE; /* TODO: Currently 'unsigned', to be changed 'signed' */
# endif
typedef LONGLONG HB_ISIZ; /* TODO: Change to HB_SIZE, after HB_SIZE has been converted to signed type. TEMPORARY type. */
typedef ULONGLONG HB_USIZ; /* TEMPORARY type. Do not use it. */
#else
# if defined( HB_SIZE_SIGNED )
// typedef HB_LONG HB_SIZE;
typedef LONG HB_SIZE;
# else
// typedef HB_ULONG HB_SIZE; /* TODO: Currently 'unsigned', to be changed 'signed' */
typedef ULONG HB_SIZE; /* TODO: Currently 'unsigned', to be changed 'signed' */
# endif
typedef LONG HB_ISIZ; /* TODO: Change to HB_SIZE, after HB_SIZE has been converted to signed type. TEMPORARY type. */
typedef ULONG HB_USIZ; /* TEMPORARY type. Do not use it. */
// typedef HB_LONG HB_ISIZ; /* TODO: Change to HB_SIZE, after HB_SIZE has been converted to signed type. TEMPORARY type. */
// typedef HB_ULONG HB_USIZ; /* TEMPORARY type. Do not use it. */
#endif
We have to decide and have CLEAR documentation and self descriptive Variable names, especially for types.
AFAIK all ANSI C Compilers implement size_t which already accounts for 32/64 and n*x LP64 vs Windows LLP64, on all platforms, so why do we have to reinvent the wheel?
if we prefer our HB_* types then why isn't HB_SIZE simply a size_t? ,If we do want a SIGNED HB_SIZE than why not something more self descriptive than HB_ISIZ? F.e. why not something much clearer like HB_SIGNED_SIZE? And if we do require signed size
On Thursday, September 14, 2023 at 9:51:40 AM UTC-5, Ron Pinkas wrote:type than why not base on ptrdiff_t and name it something like HB_PTRDIFF, which is far more descriptive? Finally, we have to ask ourselves WHY should we even have a SIGNED SIZE type?
On Thursday, September 14, 2023 at 7:44:36 AM UTC-5, Eduardo Motta wrote:
Ron, I made the pull request. When possible, please review.
Thanks
Em quarta-feira, 13 de setembro de 2023 às 18:32:04 UTC-3, Ron Pinkas escreveu:
On Wednesday, September 13, 2023 at 3:40:16 PM UTC-5, Eduardo Motta wrote:
Ron, this commit just made lost some corrections that Culik made in SQLRDD\source\sqlsrodbc.c
See the details in this commit: https://github.com/xHarbour-org/xharbour/commit/4200465de20b2e1f3713c33216fa4c212fb3f9a8I am sorry I tried to review but I can't understand these changes - they make no sense to me - Luiz will have to reapply them and preferably with a note in the main ChangeLog file so such changes can be properly traced.
I would also prefer to avoid mixed usage of HB_ISIZ along with HB_SIZE which looks like a typo.
Variable and CONSTANTS should have proper descriptive name like HB_SIGNED_SIZE and HB_UNSIGNED_SIZE - Also the code we now have in hbdefs.h to me appear total nightmare - I wonder if anyone knows if HB_SIZE is signed or unsigned, when. and why:
Thanks, I merged it, but I hope someone will take it upon themselves to cleanup this issue of HB_SIZE/HB_ISIZ./* Harbour size type */
#if defined( HB_OS_WIN_64 )
# if defined( HB_SIZE_SIGNED )
typedef LONGLONG HB_SIZE;
# else
typedef ULONGLONG HB_SIZE; /* TODO: Currently 'unsigned', to be changed 'signed' */
# endif
typedef LONGLONG HB_ISIZ; /* TODO: Change to HB_SIZE, after HB_SIZE has been converted to signed type. TEMPORARY type. */
typedef ULONGLONG HB_USIZ; /* TEMPORARY type. Do not use it. */
#else
# if defined( HB_SIZE_SIGNED )
// typedef HB_LONG HB_SIZE;
typedef LONG HB_SIZE;
# else
// typedef HB_ULONG HB_SIZE; /* TODO: Currently 'unsigned', to be changed 'signed' */
typedef ULONG HB_SIZE; /* TODO: Currently 'unsigned', to be changed 'signed' */
# endif
typedef LONG HB_ISIZ; /* TODO: Change to HB_SIZE, after HB_SIZE has been converted to signed type. TEMPORARY type. */
typedef ULONG HB_USIZ; /* TEMPORARY type. Do not use it. */
// typedef HB_LONG HB_ISIZ; /* TODO: Change to HB_SIZE, after HB_SIZE has been converted to signed type. TEMPORARY type. */
// typedef HB_ULONG HB_USIZ; /* TEMPORARY type. Do not use it. */ #endif
We have to decide and have CLEAR documentation and self descriptive Variable names, especially for types.
AFAIK all ANSI C Compilers implement size_t which already accounts for 32/64 and n*x LP64 vs Windows LLP64, on all platforms, so why do we have to reinvent the wheel?
if we prefer our HB_* types then why isn't HB_SIZE simply a size_t? ,If we do want a SIGNED HB_SIZE than why not something more self descriptive than HB_ISIZ? F.e. why not something much clearer like HB_SIGNED_SIZE? And if we do require signed size
Considering this a bit deeper, I suspect that instead of HB_ISIZ we should possibly have an HB_OFFSET type. Also I just did a quick search for HB_ISIZ and most of it has NOTHING to do with SIZE, instead its just a normal long, and indeed there is suchChangeLog entry from Luiz back in 2016-10-22 21:20 but WHY?
Ron
I see the change you told and didnt see any problem
HB_SIZE is used even on main API. see
D:\xharbour\include\hbapi.h (144 hits)
Line 272: HB_SIZE ulAllocate; \
Line 361: extern void * hb_xRefResize( void * pMem, HB_SIZE ulSave, HB_SIZE ulSize ); /* reallocates memory, create copy if reference counter greater then 1 */
Line 384: extern HB_EXPORT void * hb_gcAlloc( HB_SIZE ulSize, PHB_GARBAGE_FUNC pFunc ); /* allocates a memory controlled by the garbage collector */
Line 386: extern HB_EXPORT HB_SIZE hb_gcDecRef( void *pBlock );
Line 424: extern HB_EXPORT HB_SIZE hb_parclen( int iParam, ... ); /* retrieve a string parameter length */
Line 425: extern HB_EXPORT HB_SIZE hb_parcsiz( int iParam, ... ); /* retrieve a by-reference string parameter length, including terminator */
Line 435: extern HB_EXPORT HB_SIZE hb_parinfa( int iParamNum, HB_SIZE uiArrayIndex ); /* retrieve length or element type of an array parameter */
Line 436: extern HB_EXPORT HB_SIZE hb_parinfo( int iParam ); /* Determine the param count or data type */
Line 469: extern HB_EXPORT void hb_retclen( const char * szText, HB_SIZE ulLen ); /* returns a string with a specific length */
Line 471: extern HB_EXPORT void hb_retclenAdopt( char * szText, HB_SIZE ulLen );
Line 472: extern HB_EXPORT void hb_retclenAdoptRaw( char * szText, HB_SIZE ulLen );
Line 474: extern HB_EXPORT void hb_retclenStatic( const char * szText, HB_SIZE ulLen );
Line 475: extern HB_EXPORT void hb_retclenRaw( char * szText, HB_SIZE ulLen );
Line 491: extern HB_EXPORT void hb_reta( HB_SIZE ulLen ); /* returns an array with a specific length */
Line 559: extern HB_EXPORT void hb_storclen( const char * szText, HB_SIZE ulLength, int iParam, ... ); /* stores a fixed length string on a variable by reference */
Line 561: extern HB_EXPORT int hb_storclenAdopt( char * szText, HB_SIZE ulLength, int iParam, ... ); /* stores a fixed length string on a variable by reference */
Line 584: extern HB_EXPORT void * hb_xalloc( HB_SIZE ulSize ); /* allocates memory, returns NULL on failure */
Line 587: extern HB_EXPORT void * hb_xgrab( HB_SIZE ulSize ); /* allocates memory, exits on failure */
Line 593: extern HB_EXPORT void * hb_xrealloc( void * pMem, HB_SIZE ulSize ); /* reallocates memory */
Line 598: extern HB_EXPORT HB_SIZE hb_xsize( void * pMem ); /* returns the size of an allocated memory block */
Regardstype than why not base on ptrdiff_t and name it something like HB_PTRDIFF, which is far more descriptive? Finally, we have to ask ourselves WHY should we even have a SIGNED SIZE type?
Luiz
Em quinta-feira, 14 de setembro de 2023 às 12:18:37 UTC-3, Ron Pinkas escreveu:
On Thursday, September 14, 2023 at 9:51:40 AM UTC-5, Ron Pinkas wrote:
On Thursday, September 14, 2023 at 7:44:36 AM UTC-5, Eduardo Motta wrote:
Ron, I made the pull request. When possible, please review.
Thanks
Em quarta-feira, 13 de setembro de 2023 às 18:32:04 UTC-3, Ron Pinkas escreveu:
On Wednesday, September 13, 2023 at 3:40:16 PM UTC-5, Eduardo Motta wrote:
Ron, this commit just made lost some corrections that Culik made in SQLRDD\source\sqlsrodbc.c
See the details in this commit: https://github.com/xHarbour-org/xharbour/commit/4200465de20b2e1f3713c33216fa4c212fb3f9a8I am sorry I tried to review but I can't understand these changes - they make no sense to me - Luiz will have to reapply them and preferably with a note in the main ChangeLog file so such changes can be properly traced.
I would also prefer to avoid mixed usage of HB_ISIZ along with HB_SIZE which looks like a typo.
Variable and CONSTANTS should have proper descriptive name like HB_SIGNED_SIZE and HB_UNSIGNED_SIZE - Also the code we now have in hbdefs.h to me appear total nightmare - I wonder if anyone knows if HB_SIZE is signed or unsigned, when. and why:
Thanks, I merged it, but I hope someone will take it upon themselves to cleanup this issue of HB_SIZE/HB_ISIZ./* Harbour size type */
#if defined( HB_OS_WIN_64 )
# if defined( HB_SIZE_SIGNED )
typedef LONGLONG HB_SIZE;
# else
typedef ULONGLONG HB_SIZE; /* TODO: Currently 'unsigned', to be changed 'signed' */
# endif
typedef LONGLONG HB_ISIZ; /* TODO: Change to HB_SIZE, after HB_SIZE has been converted to signed type. TEMPORARY type. */
typedef ULONGLONG HB_USIZ; /* TEMPORARY type. Do not use it. */ #else
# if defined( HB_SIZE_SIGNED )
// typedef HB_LONG HB_SIZE;
typedef LONG HB_SIZE;
# else
// typedef HB_ULONG HB_SIZE; /* TODO: Currently 'unsigned', to be changed 'signed' */
typedef ULONG HB_SIZE; /* TODO: Currently 'unsigned', to be changed 'signed' */
# endif
typedef LONG HB_ISIZ; /* TODO: Change to HB_SIZE, after HB_SIZE has been converted to signed type. TEMPORARY type. */
typedef ULONG HB_USIZ; /* TEMPORARY type. Do not use it. */
// typedef HB_LONG HB_ISIZ; /* TODO: Change to HB_SIZE, after HB_SIZE has been converted to signed type. TEMPORARY type. */
// typedef HB_ULONG HB_USIZ; /* TEMPORARY type. Do not use it. */ #endif
We have to decide and have CLEAR documentation and self descriptive Variable names, especially for types.
AFAIK all ANSI C Compilers implement size_t which already accounts for 32/64 and n*x LP64 vs Windows LLP64, on all platforms, so why do we have to reinvent the wheel?
if we prefer our HB_* types then why isn't HB_SIZE simply a size_t? ,If we do want a SIGNED HB_SIZE than why not something more self descriptive than HB_ISIZ? F.e. why not something much clearer like HB_SIGNED_SIZE? And if we do require signed size
such ChangeLog entry from Luiz back in 2016-10-22 21:20 but WHY?Considering this a bit deeper, I suspect that instead of HB_ISIZ we should possibly have an HB_OFFSET type. Also I just did a quick search for HB_ISIZ and most of it has NOTHING to do with SIZE, instead its just a normal long, and indeed there is
Sysop: | Keyop |
---|---|
Location: | Huddersfield, West Yorkshire, UK |
Users: | 251 |
Nodes: | 16 (0 / 16) |
Uptime: | 02:45:23 |
Calls: | 5,571 |
Files: | 11,686 |
Messages: | 5,131,487 |