Hi All, To give a little push to Harbour from current state (where it seems a little stuck), I'd like to start making some moves towards type cleanup. Currently this causes problems only with hbfimage, but IMO this step is required to allow maximum portability and connectability with any possible 3rd party libs.
The goal is to keep it safe and compatible. So, I'd like to make equivalent changes only and retaining old type by default. In this first pass I plan to do these type changes: TRUE -> hbTrue FALSE -> hbFalse BOOL -> hbBool BYTE -> hbByte ULONG -> hbULong LONG -> hbLong UINT -> hbUInt SHORT -> hbShort USHORT -> hbUShort LONGLONG -> hbLongLong ULONGLONG -> hbULongLong INT16 -> hbI16 UINT16 -> hbU16 INT32 -> hbI32 UINT32 -> hbU32 INT64 -> hbI64 UINT64 -> hbU64 SCHAR -> hbSChar UCHAR -> hbUChar Only those places will require extra attention where these types are used in Win API contexts (gtwvg for the most part). In first round old types will remain and they a new macro will be introduced to disable them explicitly. This is to not break 3rd party Harbour code. Probably protected by HB_LEGACY_LEVEL3 (or 2). While this compatibility period lasts, the old types will have to be disabled explicitly for all code where collisions are experienced, f.e. hbfimage. [ as next step we can continue cleaning up effective type usage by switching to abstract types or base types where needed, but that's another matter. ] Please comment on this. Brgds, Viktor _______________________________________________ Harbour mailing list [email protected] http://lists.harbour-project.org/mailman/listinfo/harbour
