Tinny, Dean, etc.,
I didn't get any feedback to my questions below, so I will proceed with
proposing the following changes (I'm just pasting in the DIFF outputs)...
===================================================================
RCS file: /home/cvspublic/xml-xerces/c/src/util/Compilers/BorlandCDefs.hpp,v
retrieving revision 1.8
diff -r1.8 BorlandCDefs.hpp
88,89c88,91
< // typedef wchar_t XMLCh;
< typedef unsigned short XMLCh;
---
> typedef wchar_t XMLCh;
> // typedef unsigned short XMLCh;
> // since C++Builder supports the wchar_t standard definition as unsigned short
> // but won't automatically convert between the two
===================================================================
RCS file:
/home/cvspublic/xml-xerces/c/src/util/Platforms/Win32/Win32PlatformUtils.cpp,v
retrieving revision 1.26
diff -r1.26 Win32PlatformUtils.cpp
74c74,78
< #include <crtdbg.h>
---
> #ifdef _MSC_VER
> #include <crtdbg.h>
> #else
> #include <assert.h>
> #endif
626,628c630,634
< // Windows supports InterlockedCompareExchange only on Windows 98,
< // NT 4.0, and newer. Not on Win 95. So we are back to using assembler.
< // (But only if building with MSVC.)
---
> // InterlockedCompareExchange is only supported on Windows 98,
> // Windows NT 4.0, and newer -- not on Windows 95...
> // If you are willing to give up Win95 support change this to #if 0
> // otherwise we are back to using assembler.
> // (But only if building with compilers that support inline assembler.)
630c636
< #if defined(_MSC_VER)
---
> #if defined(_MSC_VER) || defined(__BCPLUSPLUS__)
746c752
< #if 0 && _DEBUG
---
> #if 0 && defined(_DEBUG)
I have also re-created the BCB4 project files. Because the changes were so
numerous -- mostly because all the paths were wrong -- I am simply attaching a
.ZIP with the new versions of all those files. (See attached file:
Projects-Win32-BCB4.zip)
P.S. I probably should add the disclaimer that these contributions are my own
and imply no responsibilities nor liabilities for my employer.
[EMAIL PROTECTED]
03/28/2001 02:21 AM
Please respond to [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Subject: Supporting C++Builder 4 and 5 issues
I am trying to pull together updates for the BCB4 files in CVS and create a
similar BCB5 tree for C++Builder 5 and I would like the community's input on a
few issues...
1. Am I correct that Visual C++ 6 does not declare the C++ standard type
"wchar_t" as intrinsic like C++Builder does, which allows VC6 to think an
"XMLCh" is the same, while C++Builder thinks they are different?
2. Given the typedef problem above, is anyone building Xerces under C++Builder
^without^ changing the "XMLCh" typedef in util\Compilers\BorlandCDefs.hpp back
to being "wchar_t"?
3. MSDN, etc. indicates that the InterlockedCompareExchange API is not
supported on Windows 95, only on later versions. Secondly, in the
"compareAndSwap" method in util\Platforms\Win32\Win32PlatformUtils.cpp, the
inline assembler section ifdef'ed for VC++ uses instructions that, I think, are
only valid for 80486 and later processors. Is supporting Windows 95 the reason
we are not using the InterlockedCompareExchange API method? Additionally, does
Xerces have a stated list of supported processors?
.ZIP File
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]