You are viewing a plain text version of this content. The canonical link for it is here.
Posted to general@xerces.apache.org by Gary Gale x58814 GB- COM/Q/6th <ga...@factiva.com> on 2000/03/13 12:23:32 UTC

Xerces-C on Tru64 - An Update and Some Questions

A while back (the end of January if I recall) I posted to this list to see
whether anyone was porting, or considering porting, Xerces-C onto Compaq Tru64
(aka Digital Unix).

Thanks to all who responded, even if it was to say that Tru64 was an
unsupported platform.

I've now got to the stage where I can build Xerces-C, plus the sample apps, on
Tru64 4.0f using DEC C++ V6.2. As a result of this some questions, both legal
and code-wise have come up

1) Compiling Without Warnings.

These are several places throughout the code where a variable, explicitly
declared as unsigned is assigned/compared to a signed value. For example, in
src/internal/XMLScanner2.cpp we have this code fragment

const unsigned int colonOfs = XMLString::indexOf (attrName, chColon);
if (colonOfs != -1)
{
	...
}

Quite rightly, the DEC C++ compiler complains about this with the diagnostic

cxx: Warning: XMLScanner2.cpp, line 1001: integer conversion resulted in a
change of sign

Likewise, there are also unreachable statements in several places which have
obviously been put in to keep other compilers happy but DEC C++ winges about
"statement is unreachable".

I don't want to put conditional code into supposedly platform independent code
just to keep one compiler out of many happy but I do want the code to build
warning free. Any suggestions?

2) Submitting the Port