[ http://issues.apache.org/jira/browse/XERCESC-1593?page=comments#action_12379088 ]
Jesse Pelton commented on XERCESC-1593: --------------------------------------- While I agree that ideal code compiles without warnings, there are many compilers in the world, each with its own criteria for generating warnings. Today's "clean" code may cause a future compiler to spew endless warnings. Furthermore, some compilers aren't especially smart about the warnings they generate. In the code I looked at, a more sophisticated compiler would have determined that the code was safe and skipped the warnings. I'm skeptical of the notion of altering code purely to silence a compiler that generates needless warnings. For instance, in the cases I looked at, it's not clear what appropriate initial values would be; choosing some arbitrary value could make the code harder to really understand, which is a step backward. Remember that I pointed out that the code I looked at is hard to understand. If it's restructured to make it easier for humans to understand, I think there's a good chance that compilers will be able to analyze it more successfully. Warnings should be viewed as a hint that you might want to rethink your code, not as a mandate to revise it. In any case, if you believe you have a solution, I imagine that a patch would be welcome. If you make a patch against the current code in SVN, it will be easier to review and apply. > critical Warning on compiling XercesC 2.7.0 > ------------------------------------------- > > Key: XERCESC-1593 > URL: http://issues.apache.org/jira/browse/XERCESC-1593 > Project: Xerces-C++ > Type: Bug > Components: Build > Versions: 2.7.0 > Environment: MSVC 2003 (7.1) > Set Warning Level to 4 > Reporter: Lukas Grützmacher > > I've compiled XercesC 2.7.0 from sources with MSVC2003. > I've changed the project settings to use always warning level 4. > Thereby I found a lot of warnings. IMHO some of them are critical: > xerces-c-src_2_7_0\src\xercesc\validators\schema\traverseschema.cpp(6490) : > warning C4701: local variable 'defAttType' may be used without having been > initialized > xerces-c-src_2_7_0\src\xercesc\util\regx\token.cpp(259) : warning C4701: > local variable 'ret2' may be used without having been initialized > xerces-c-src_2_7_0\src\xercesc\util\regx\RegularExpression.cpp(184) : warning > C4244: 'argument' : conversion from 'XMLInt32' to 'const XMLCh', possible > loss of data > xerces-c-src_2_7_0\src\xercesc\util\platforms\win32\win32platformutils.cpp(795) > : warning C4701: local variable 'retVal' may be used without having been > initialized > xerces-c-src_2_7_0\tests\xserializertest\xserializertest.cpp(537) : warning > C4701: local variable 'duration' may be used without having been initialized > Many others are not critical but sould be fixed, too. Here are some examples: > DFAContentModel.cpp > ..\..\..\..\..\src\xercesc\validators\common\CMNode.hpp(129) : warning C4245: > 'initializing' : conversion from 'int' to 'unsigned int', signed/unsigned > mismatch > xerces-c-src_2_7_0\src\xercesc\internal\XSAXMLScanner.cpp(310) : warning > C4245: 'argument' : conversion from '' to 'unsigned int', signed/unsigned > mismatch > xerces-c-src_2_7_0\src\xercesc\framework\psvi\XSValue.cpp(1721) : warning > C4189: 'strLen' : local variable is initialized but not referenced > xerces-c-src_2_7_0\src\xercesc\dom\deprecated\DOM_RangeException.cpp(36) : > warning C4244: 'argument' : conversion from > 'xercesc_2_7::DOM_RangeException::RangeExceptionCode' to 'short', possible > loss of data -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]