You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@xerces.apache.org by bu...@apache.org on 2002/06/20 18:35:04 UTC

DO NOT REPLY [Bug 10067] New: - SEnumVal bugs found when porting to Visual Studio .NET projects

DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=10067>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=10067

SEnumVal bugs found when porting to Visual Studio .NET projects

           Summary: SEnumVal bugs found when porting to Visual Studio .NET
                    projects
           Product: Xerces-C++
           Version: Nightly build (please specify the date)
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: Normal
          Priority: Other
         Component: Samples/Tests
        AssignedTo: xerces-c-dev@xml.apache.org
        ReportedBy: rbuck@mathworks.com


Several warnings such as the following erupt when compiling the SEnumVal 
example under Visual Studio .NET:

SEnumVal.cpp(316) : warning C4554: '&' : check operator precedence for possible 
error; use parentheses to clarify precedence

Same for line (319) and (322) too.

Microsoft's warning is valid. For example:

    ( mflags & SchemaSymbols::NILLABLE  != 0 )

is poorly written and will be evaluated improperly since "!=" has higher 
precedence than "&". Yikes! These instead should be rewritten as:

if ( mflags & SchemaSymbols::NILLABLE )
  cout << "Nillable ";

if ( mflags & SchemaSymbols::ABSTRACT )
  cout << "Abstract ";

if ( mflags & SchemaSymbols::FIXED )
  cout << "Fixed ";

---------------------------------------------------------------------
To unsubscribe, e-mail: xerces-c-dev-unsubscribe@xml.apache.org
For additional commands, e-mail: xerces-c-dev-help@xml.apache.org