diff -r 000000000000 -r 638b9c697799 apicompatanamdw/compatanalysercmd/headeranalyser/src/Issues.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/apicompatanamdw/compatanalysercmd/headeranalyser/src/Issues.cpp Tue Jan 12 14:52:39 2010 +0530 @@ -0,0 +1,2757 @@ +/* +* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* +*/ + +#include +#include "Issues.h" +#include "XMLStringConst.h" + +const char* KIgnoreInfoNone = "None"; + +// Textual descriptions for the severity levels +// Can be seen in the result xml +const char* KSeverityNULL = "None"; +const char* KSeverityBBCBreak = "BBC Break"; +const char* KSeverityPossibleBBCBreak = "Possible BBC Break"; +const char* KSeverityFCBreak = "FC Break"; +const char* KSeverityPossibleFCBreak = "Possible FC Break"; +const char* KSeverityInformative = "Informative"; + +// Table of severity descriptions levels for binary compatibility +const char* KSeverityDesc[ESeverityCount] = +{ + KSeverityNULL, + KSeverityBBCBreak, + KSeverityPossibleBBCBreak, + KSeverityInformative, + KSeverityFCBreak, + KSeverityPossibleFCBreak +}; + +// Textual descriptions for the severity levels +// Can be seen in the result xml +const char* KSeveritySCNULL = "None"; +const char* KSeveritySCBreak = "SC Break"; +const char* KSeverityPossibleSCBreak = "Possible SC Break"; +const char* KSeveritySCInformative = "Informative"; + +// Table of severity descriptions levels for source compatibility +const char* KSeveritySCDesc[ESeveritySCCount] = +{ + KSeveritySCNULL, + KSeveritySCBreak, + KSeverityPossibleSCBreak, + KSeveritySCInformative +}; + + +// Textual descriptions for the identities +// Can be seen in the result xml +const char* KIdentityClass = "Class"; +const char* KIdentityEnumeration = "Enumeration"; +const char* KIdentityExportedFunction = "Exported function"; +const char* KIdentityVirtualFunction = "Virtual function"; +const char* KIdentityStruct = "Struct"; +const char* KIdentityUnion = "Union"; +const char* KIdentityEnumerationValue = "Enumeration value"; +const char* KIdentityTypedef = "Typedef"; +const char* KIdentityVariable = "Constant"; +const char* KIdentityField = "Field"; +const char* KIdentityFieldInaccessible = "Field"; +const char* KIdentityFile = "File"; +const char* KIdentityMacro = "Macro"; +const char* KIdentityInlineFunction = "Inline function"; +const char* KIdentityVirtualTable= "Virtual table"; +const char* KIdentitySubobject = "Subobject"; +const char* KIdentityVirtualTablePointer = "Virtual table pointer"; +const char* KIdentityExportedInlineFunction = "Exported inline function"; +const char* KIdentityExportedVirtualFunction = "Exported virtual function"; +const char* KIdentityVirtualInlineFunction = "Virtual inline function"; +const char* KIdentityExportedVirtualInlineFunction = "Exported virtual inline function"; +const char* KIdentityStructMember = "Strcut member"; + + +// Table of the issue description +const char* KIssueIdentityDesc[EIssueIdentityCount] = +{ + KIdentityClass, + KIdentityExportedFunction, + KIdentityInlineFunction, + KIdentityVirtualFunction, + KIdentityEnumeration, + KIdentityStruct, + KIdentityUnion, + KIdentityEnumerationValue, + KIdentityTypedef, + KIdentityVariable, + KIdentityField, + KIdentityFieldInaccessible, + KIdentityMacro, + KIdentityFile, + KIdentityVirtualTable, + KIdentitySubobject, + KIdentityVirtualTablePointer, + KIdentityExportedInlineFunction, + KIdentityExportedVirtualFunction, + KIdentityVirtualInlineFunction, + KIdentityExportedVirtualInlineFunction, + KIdentityStructMember +}; + +// Textual descriptions for the issue types +// Can be seen in the result xml +const char* KIssueTypeRemoval = "has been removed"; +const char* KIssueTypeAddition = "has been added"; +const char* KIssueTypeChange = "has been changed"; +const char* KIssueTypeSize = "has changed size"; +const char* KIssueTypeBaseSize = "has changed base size"; +const char* KIssueTypeAlign = "has changed alignment"; +const char* KIssueTypeParam = "has changed one of its parameters"; +const char* KIssueTypeParamConst = "has changed one of its parameters or funtion type"; +const char* KIssueTypeParamConst2 = "has changed one of its parameters or funtion type"; +const char* KIssueTypeReturn = "has changed its return value"; +const char* KIssueTypeReturnConst = "has changed its return value"; +const char* KIssueTypeReturnConst2 = "has changed its return value"; +const char* KIssueTypeAccess = "has more restricted access level"; +const char* KIssueTypeInheritance = "has changes in inheritance"; +const char* KIssueTypeOffset = "has changed its offset"; +const char* KIssueTypeOrderChange = "order has changed"; +const char* KIssueTypeCompilationError = "has compilation errors"; +const char* KIssueTypeNotAnalysed = "could not be analysed"; +const char* KIssueTypeUnderConstruction = "analysis under construction"; +const char* KIssueTypeVirtualBases = "has virtual bases"; +const char* KIssueTypeChangeInType = "has changed its type"; +const char* KIssueTypeChangeInInitialisation = "has changed its initialisation value"; +const char* KIssueTypeNewOverride = "overridden in derivable class"; +//const char* KIssueTypeRemovedOverride = "removed override in derivable class"; +const char* KIssueTypeEmpty = "contains nothing to be analysed"; + +// Table of the issue type descriptions +const char* KIssueTypeDesc[EIssueTypeCount] = +{ + KIssueTypeRemoval, + KIssueTypeAddition, + KIssueTypeChange, + KIssueTypeSize, + KIssueTypeAlign, + KIssueTypeParam, + KIssueTypeReturn, + KIssueTypeAccess, + KIssueTypeInheritance, + KIssueTypeOffset, + KIssueTypeOrderChange, + KIssueTypeChangeInType, + KIssueTypeChangeInInitialisation, + KIssueTypeCompilationError, + KIssueTypeNotAnalysed, + KIssueTypeVirtualBases, + KIssueTypeNewOverride, +// KIssueTypeRemovedOverride, + KIssueTypeEmpty, + KIssueTypeBaseSize, + KIssueTypeUnderConstruction, + KIssueTypeParamConst, + KIssueTypeParamConst2, + KIssueTypeReturnConst, + KIssueTypeReturnConst2 +}; + +template +string GetIgnoreInfoFromAttribute(const HANodeIterator& node, const T* attribute) +{ + string ignoreinfo=""; + + const XMLCh* idx = node.GetAttribute(attribute); + if (idx) + { + ignoreinfo = toString(idx); + } + return ignoreinfo; +} + +/** +* In the following the severities and ignore information of issues are defined through template mechanism. +* This allows linking time checking that we have not forgot to define meaningful information for new issues. +* In order to modify severity information or ignore information first determine the TIssueIdentity and TIssueType +* of the issue and then find the correct function (BCseverityAccessible, +* SCseverityAccessible and ignoreInfo) and modify the function +* definition to match with the severity and ignore information. + +* The BCseverityAccessible function includes parameter [accessible] that defines if the element is directly accessible +* or only through some inline method. +*/ +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityPossibleBBCBreak; + } + return ESeverityBBCBreak; +} + + +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + + return ignoreinfo; +} + + +//Size, +//ESeverityBBCBreak, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityPossibleBBCBreak; + } + return ESeverityBBCBreak; +} + +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + return GetIgnoreInfoFromAttribute(current,KXMLSizeString); +} + +//Align, +//ESeverityBBCBreak, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityPossibleBBCBreak; + } + return ESeverityBBCBreak; +} + +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + const XMLCh* align = current.GetAttribute(KXMLAlignString); + if (align) + { + ignoreinfo = toString(align); + } + return ignoreinfo; +} + +//Access, +//ESeverityInformative, + +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityInformative; + } + return ESeverityInformative; +} + +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + const XMLCh* access = current.GetAttribute(KXMLAccessString); + if (access) + { + ignoreinfo = toString(access); + } + return ignoreinfo; +} + +//Inheritance, +//ESeverityPossibleBBCBreak, + +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityPossibleBBCBreak; + } + return ESeverityPossibleBBCBreak; +} + +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + DOMNodeList* childs = current.GetElementsByTagName(KXMLBaseString); + + XMLSize_t childcount = childs->getLength(); + + for (unsigned int i = 0; i < childcount; ++i) + { + HANodeIterator baselineit(current); + baselineit.current = childs->item(i); + + ignoreinfo += GetIgnoreInfoFromAttribute(baselineit,KXMLAccessString); + ignoreinfo += " "; + + if (baselineit.CheckForBooleanAttribute(KXMLVirtualString) ) + { + ignoreinfo += "virtual "; + } + + ignoreinfo += GetTypeName(baselineit); + ignoreinfo += ";"; + } + + return ignoreinfo; +} + +//KIssueNotAnalysed +//ESeverityInformative, + +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityInformative; + } + return ESeverityInformative; +} + +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + + return ignoreinfo; +} + + +//EIssueTypeVirtualBases +//Informative + +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityInformative; + } + return ESeverityInformative; +} + +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + + return ignoreinfo; +} + +//EIssueTypeBaseSize +//ESeverityBBCBreak +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityPossibleBBCBreak; + } + return ESeverityBBCBreak; +} + +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + + const NodeIndex::dtable_t& datafields = ClassGenerateDataMemberTable(current); + int basesize = ClassBaseSize(current,datafields); + + ostringstream stream; + stream << basesize << flush; + ignoreinfo = stream.str(); + + return ignoreinfo; +} + +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +//EIssueIdentityEnumeration, +// Removal, +// {ESeverityPossibleFCBreak, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityPossibleFCBreak; + } + return ESeverityPossibleFCBreak; +} + +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + + return ignoreinfo; +} + + +//Change, +//SeverityFCBreak, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityPossibleFCBreak; + } + return ESeverityPossibleFCBreak; +} + +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + + DOMNodeList* baselinechilds = current.GetElementsByTagName(KXMLEnumValueString); + XMLSize_t baselinechildcount = baselinechilds->getLength(); + unsigned int i = 0; + for (i = 0; i < baselinechildcount; ++i) + { + HANodeIterator baselineit(current); + baselineit.current = baselinechilds->item(i); + ignoreinfo += GetIgnoreInfoFromAttribute(baselineit,KXMLNameString); + ignoreinfo += "="; + ignoreinfo += GetIgnoreInfoFromAttribute(baselineit,KXMLInitString); + ignoreinfo += ";"; + } + + return ignoreinfo; +} + +//Size, +//ESeverityFCBreak, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityPossibleFCBreak; + } + return ESeverityFCBreak; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + + const XMLCh* size = current.GetAttribute(KXMLSizeString); + if (size) + { + ignoreinfo = toString(size); + } + return ignoreinfo; +} + +//Align, +//ESeverityFCBreak, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityPossibleFCBreak; + } + return ESeverityFCBreak; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + + const XMLCh* align = current.GetAttribute(KXMLAlignString); + if (align) + { + ignoreinfo = toString(align); + } + return ignoreinfo; +} + +//Access, +//ESeverityInformative, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityInformative; + } + return ESeverityInformative; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + const XMLCh* access = current.GetAttribute(KXMLAccessString); + if (access) + { + ignoreinfo = toString(access); + } + return ignoreinfo; +} + +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +//EIssueIdentityExportedFunction, +// Removal, +// ESeverityBBCBreak, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityPossibleBBCBreak; + } + return ESeverityBBCBreak; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + + return ignoreinfo; +} + +// Param, +// ESeverityBBCBreak, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityPossibleBBCBreak; + } + return ESeverityBBCBreak; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + DOMElement * element = static_cast(current.current); + DOMNodeList* childs = element->getChildNodes(); + + XMLSize_t childcount = childs->getLength(); + + unsigned int i = 0; + for (i = 0; i < childcount; ++i) + { + DOMNode* child = childs->item(i); + HANodeIterator childit(current); + childit.current = child; + + short nodetype = childit->getNodeType(); + if (nodetype == DOMNode::ELEMENT_NODE) + { + const XMLCh * defaultval = childit.GetAttribute(KXMLDefaultString); + if ( defaultval ) + { + ignoreinfo += toString(defaultval); + } + else + { + } + ignoreinfo += ";"; + } + + } + return ignoreinfo; +} + +// Param non-const to const, +// ESeverityNULL, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityNULL; + } + return ESeverityNULL; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + //ignoreinfo = GenerateFunctionSignature(*this); + DOMElement * element = static_cast(current.current); + DOMNodeList* childs = element->getChildNodes(); + + XMLSize_t childcount = childs->getLength(); + + unsigned int i = 0; + for (i = 0; i < childcount; ++i) + { + DOMNode* child = childs->item(i); + HANodeIterator childit(current); + childit.current = child; + + short nodetype = childit->getNodeType(); + if (nodetype == DOMNode::ELEMENT_NODE) + { + const XMLCh * defaultval = childit.GetAttribute(KXMLDefaultString); + if ( defaultval ) + { + ignoreinfo += toString(defaultval); + } + else + { + } + ignoreinfo += ";"; + } + + } + return ignoreinfo; +} + +// Param const to non-const, +// ESeverityFCBreak, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityPossibleFCBreak; + } + return ESeverityFCBreak; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + //ignoreinfo = GenerateFunctionSignature(*this); + DOMElement * element = static_cast(current.current); + DOMNodeList* childs = element->getChildNodes(); + + XMLSize_t childcount = childs->getLength(); + + unsigned int i = 0; + for (i = 0; i < childcount; ++i) + { + DOMNode* child = childs->item(i); + HANodeIterator childit(current); + childit.current = child; + + short nodetype = childit->getNodeType(); + if (nodetype == DOMNode::ELEMENT_NODE) + { + const XMLCh * defaultval = childit.GetAttribute(KXMLDefaultString); + if ( defaultval ) + { + ignoreinfo += toString(defaultval); + } + else + { + } + ignoreinfo += ";"; + } + + } + return ignoreinfo; +} + +// Return, +// ESeverityBBCBreak, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityPossibleBBCBreak; + } + return ESeverityBBCBreak; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + + const XMLCh * baselineid = current.GetAttribute(KXMLReturnsString); + if (baselineid) + { + HANodeIterator newbaseline(current); + bool ret1=newbaseline.FindNodeById(baselineid); + if (ret1) + { + ignoreinfo += GetTypeName(newbaseline); + } + } + + return ignoreinfo; +} + +// Return const to non-const, +// ESeverityNULL, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityNULL; + } + return ESeverityNULL; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + + const XMLCh * baselineid = current.GetAttribute(KXMLReturnsString); + if (baselineid) + { + HANodeIterator newbaseline(current); + bool ret1=newbaseline.FindNodeById(baselineid); + if (ret1) + { + ignoreinfo += GetTypeName(newbaseline); + } + } + + return ignoreinfo; +} + +// Return non-const to const, +// ESeverityFCBreak, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityPossibleFCBreak; + } + return ESeverityFCBreak; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + + const XMLCh * baselineid = current.GetAttribute(KXMLReturnsString); + if (baselineid) + { + HANodeIterator newbaseline(current); + bool ret1=newbaseline.FindNodeById(baselineid); + if (ret1) + { + ignoreinfo += GetTypeName(newbaseline); + } + } + + return ignoreinfo; +} + +// Access, +// ESeverityInformative, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityInformative; + } + return ESeverityInformative; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + const XMLCh* access = current.GetAttribute(KXMLAccessString); + if (access) + { + ignoreinfo = toString(access); + } + return ignoreinfo; +} + +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +//EIssueIdentityInlineFunction, +// Removal, +// {ESeverityInformative, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityInformative; + } + return ESeverityInformative; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + return ignoreInfo(baseline,current); +} + +// Param, +// ESeverityInformative, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityInformative; + } + return ESeverityInformative; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + return ignoreInfo(baseline,current); +} + +// Param non-const to const, +// ESeverityNULL, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityNULL; + } + return ESeverityNULL; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + return ignoreInfo(baseline,current); +} + +// Param const to non-const, +// ESeverityFCBreak, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityInformative; + } + return ESeverityInformative; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + return ignoreInfo(baseline,current); +} + +// Return, +// ESeverityInformative, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityInformative; + } + return ESeverityInformative; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + return ignoreInfo(baseline,current); +} + +// Return const to non-const, +// ESeverityNULL, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityNULL; + } + return ESeverityNULL; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + return ignoreInfo(baseline,current); +} + +// Return non-const to const, +// ESeverityFCBreak, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityPossibleFCBreak; + } + return ESeverityFCBreak; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + return ignoreInfo(baseline,current); +} + +// Access, +// ESeverityInformative, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityInformative; + } + return ESeverityInformative; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + return ignoreInfo(baseline,current); +} + +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +//EIssueIdentityExportedVirtualFunction, +// Removal, +// {ESeverityBBCBreak, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityBBCBreak; + } + return ESeverityBBCBreak; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + + return ignoreinfo; +} + +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +//EIssueIdentityVirtualFunction, +// Removal, +// {ESeverityBBCBreak, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityBBCBreak; + } + return ESeverityBBCBreak; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + + return ignoreinfo; +} + +// Addition, +// ESeverityBBCBreak, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityBBCBreak; + } + return ESeverityBBCBreak; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + + return ignoreinfo; +} + +// Param, +// ESeverityBBCBreak, + +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityBBCBreak; + } + return ESeverityBBCBreak; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + return ignoreInfo(baseline,current); +} + +// Return, +// ESeverityBBCBreak, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityBBCBreak; + } + return ESeverityBBCBreak; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + return ignoreInfo(baseline,current); +} + +// Access, +// ESeverityInformative, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityInformative; + } + return ESeverityInformative; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + const XMLCh* access = current.GetAttribute(KXMLAccessString); + if (access) + { + ignoreinfo = toString(access); + } + return ignoreinfo;} + +// OrderChange, +// ESeverityBBCBreak, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityBBCBreak; + } + return ESeverityBBCBreak; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + + const XMLCh* idx = current.GetAttribute(KXMLBBCVirtualFunctionIndex); + if (idx) + { + ignoreinfo = toString(idx); + } + return ignoreinfo; +} + + +// KIssueTypeNewOverride, +// ESeverityBBCBreak, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityBBCBreak; + } + return ESeverityBBCBreak; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + return ignoreinfo; +} + + +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +//EIssueIdentityStruct, +// Removal, +// {ESeverityBBCBreak, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityPossibleBBCBreak; + } + return ESeverityBBCBreak; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + return ignoreInfo(baseline,current); +} + +// BaseSize, +// ESeverityBBCBreak, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + return BCseverityAccessible(accessible); +} + +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + return ignoreInfo(baseline,current); +} + +// EIssueTypeNotAnalysed +// ESeverityInformative +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityInformative; + } + return ESeverityInformative; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + return ignoreInfo(baseline,current); +} + + +// Size, +// ESeverityBBCBreak, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityPossibleBBCBreak; + } + return ESeverityBBCBreak; +} + +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + return ignoreInfo(baseline,current); +} +// Align, +// ESeverityBBCBreak, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityPossibleBBCBreak; + } + return ESeverityBBCBreak; +} + +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + return ignoreInfo(baseline,current); +} +// Access, +// ESeverityInformative, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityInformative; + } + return ESeverityInformative; +} + +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + return ignoreInfo(baseline,current); +} +// Inheritance, +// ESeverityPossibleBBCBreak, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityPossibleBBCBreak; + } + return ESeverityPossibleBBCBreak; +} + +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + return ignoreInfo(baseline,current); +} + +//EIssueTypeVirtualBases +//Informative + +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityInformative; + } + return ESeverityInformative; +} + +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + + return ignoreinfo; +} + +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +//EIssueIdentityUnion, +// Removal, +// {ESeverityBBCBreak, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityPossibleBBCBreak; + } + return ESeverityBBCBreak; +} + +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + + return ignoreinfo; +} + +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityPossibleBBCBreak; + } + return ESeverityPossibleBBCBreak; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + + return ignoreinfo; +} + + +// Size, +// ESeverityBBCBreak, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityPossibleBBCBreak; + } + return ESeverityBBCBreak; +} + +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + return GetIgnoreInfoFromAttribute(current,KXMLSizeString); +} + +// BaseSize, +// ESeverityBBCBreak, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + return BCseverityAccessible(accessible); +} + +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + return ignoreInfo(baseline,current); +} + + +// Align, +// ESeverityBBCBreak, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityPossibleBBCBreak; + } + return ESeverityBBCBreak; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + return GetIgnoreInfoFromAttribute(current,KXMLAlignString); +/* string ignoreinfo=KIgnoreInfoNone; + ignoreinfo = toString(current.GetAttribute(KXMLAlignString)); + return ignoreinfo; + */ +} + +// Access, +// ESeverityInformative, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityInformative; + } + return ESeverityInformative; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + const XMLCh* access = current.GetAttribute(KXMLAccessString); + if (access) + { + ignoreinfo = toString(access); + } + return ignoreinfo; +} + +// KIssueNotAnalysed +// ESeverityInformative, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityInformative; + } + return ESeverityInformative; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + + return ignoreinfo; +} + + +//EIssueTypeVirtualBases +//Informative + +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityInformative; + } + return ESeverityInformative; +} + +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + + return ignoreinfo; +} +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +//EIssueIdentityEnumerationValue, +// Removal, +// {ESeverityFCBreak, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityPossibleFCBreak; + } + return ESeverityPossibleFCBreak; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + + return ignoreinfo; +} + + +// ChangeInInitialisation, , +// ESeverityFCBreak, , +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityPossibleFCBreak; + } + return ESeverityPossibleFCBreak; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + return GetIgnoreInfoFromAttribute(current,KXMLInitString); +} + +//Access, +//ESeverityInformative, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityInformative; + } + return ESeverityInformative; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + const XMLCh* access = current.GetAttribute(KXMLAccessString); + if (access) + { + ignoreinfo = toString(access); + } + return ignoreinfo; +} + +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +//EIssueIdentityTypedef, +// Removal, +// {ESeverityPossibleBBCBreak, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityPossibleBBCBreak; + } + return ESeverityPossibleBBCBreak; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + + return ignoreinfo; +} + +// Change, +// ESeverityBBCBreak, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityPossibleBBCBreak; + } + return ESeverityPossibleBBCBreak; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + const XMLCh * nodetypeid = current.GetAttribute(KXMLTypeString); + if (nodetypeid) + { + HANodeIterator typenode(current); + bool ret1=typenode.FindNodeById(nodetypeid); + if (ret1) + { + ignoreinfo = GetTypeName(typenode); + } + } + return ignoreinfo; +} +//Access, +//ESeverityInformative, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityInformative; + } + return ESeverityInformative; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + const XMLCh* access = current.GetAttribute(KXMLAccessString); + if (access) + { + ignoreinfo = toString(access); + } + return ignoreinfo; +} +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +//EIssueIdentityVariable, +// Removal, +// {ESeverityPossibleBBCBreak, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityPossibleBBCBreak; + } + return ESeverityPossibleBBCBreak; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + + return ignoreinfo; +} + +// ChangeInType, +// ESeverityBBCBreak, + +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityPossibleBBCBreak; + } + return ESeverityPossibleBBCBreak; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + const XMLCh * nodetypeid = current.GetAttribute(KXMLTypeString); + if (nodetypeid) + { + HANodeIterator typenode(current); + bool ret1=typenode.FindNodeById(nodetypeid); + if (ret1) + { + ignoreinfo = GetTypeName(typenode); + } + } + + return ignoreinfo; +} + +// ChangeInInitialisation, , +// ESeverityFCBreak, , +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityPossibleFCBreak; + } + return ESeverityPossibleFCBreak; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + return ::GetIgnoreInfoFromAttribute(current,KXMLInitString); +} + +//Access, +//ESeverityInformative, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityInformative; + } + return ESeverityInformative; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + const XMLCh* access = current.GetAttribute(KXMLAccessString); + if (access) + { + ignoreinfo = toString(access); + } + return ignoreinfo; +} + +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +//EIssueIdentityField, +// Removal, +// {ESeverityBBCBreak, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityPossibleBBCBreak; + } + return ESeverityBBCBreak; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + + return ignoreinfo; +} + +// Addition, +// ESeverityInformative, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityInformative; + } + return ESeverityInformative; +} + +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + + ignoreinfo += toString(current.GetAttribute(KXMLContextString)); + ignoreinfo += ";"; + const XMLCh * nodetypeid = current.GetAttribute(KXMLTypeString); + if (nodetypeid) + { + HANodeIterator typenode(current); + bool ret1=typenode.FindNodeById(nodetypeid); + if (ret1) + { + ignoreinfo += GetTypeName(typenode); + } + } + return ignoreinfo; +} + +// Size, +// ESeverityBBCBreak, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityPossibleBBCBreak; + } + return ESeverityBBCBreak; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + const XMLCh * size = GetSize(current); + if (size) + { + ignoreinfo += toString( size ); + } + + return ignoreinfo; +} + + +// Access, +// ESeverityInformative, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityInformative; + } + return ESeverityInformative; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + const XMLCh* access = current.GetAttribute(KXMLAccessString); + if (access) + { + ignoreinfo = toString(access); + } + return ignoreinfo; +} + +// Offset, +// ESeverityBBCBreak, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityPossibleBBCBreak; + } + return ESeverityBBCBreak; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + return ::GetIgnoreInfoFromAttribute(current,KXMLContextString); +} + + +// ChangeInType, +// ESeverityBBCBreak, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityPossibleBBCBreak; + } + return ESeverityBBCBreak; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=""; + + const XMLCh * nodetypeid = current.GetAttribute(KXMLTypeString); + if (nodetypeid) + { + HANodeIterator typenode(current); + bool ret1=typenode.FindNodeById(nodetypeid); + if (ret1) + { + ignoreinfo += GetTypeName(typenode); + } + } + + return ignoreinfo; +} + +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +//EIssueIdentityFieldInaccessible, +// Removal, +// {ESeverityInformative, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityInformative; + } + return ESeverityInformative; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + return ignoreInfo(baseline, current); +} + +// Addition, +// ESeverityInformative, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityInformative; + } + return ESeverityInformative; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + return ignoreInfo(baseline, current); +} + + +// Size, +// ESeverityInformative, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityInformative; + } + return ESeverityInformative; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + return ignoreInfo(baseline, current); +} + +// Access, +// ESeverityInformative, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityInformative; + } + return ESeverityInformative; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + return ignoreInfo(baseline, current); +} + +// Offset, +// ESeverityInformative, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityInformative; + } + return ESeverityInformative; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + return ignoreInfo(baseline, current); +} + +// ChangeInType, +// ESeverityInformative, , +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityInformative; + } + return ESeverityInformative; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + return ignoreInfo(baseline, current); +} + + +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +//EIssueIdentityFile, +// KIssueNotAnalysed +// ESeverityInformative, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityInformative; + } + return ESeverityInformative; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + + return ignoreinfo; +} + +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeverityPossibleBBCBreak; + } + return ESeverityBBCBreak; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + + return ignoreinfo; +} +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +//EIssueIdentityVirtualTable, +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + return ESeverityBBCBreak; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + + return ignoreinfo; +} + +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +//KIdentitySubobject +//Offset +//ESeverityBBCBreak +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + return ESeverityBBCBreak; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + + return ignoreinfo; +} + +//Removal +//ESeverityBBCBreak +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + return ESeverityBBCBreak; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + + return ignoreinfo; +} + +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +//EIssueIdentityVirtualTablePointer +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + return ESeverityBBCBreak; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + + return ignoreinfo; +} + +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + return ESeverityBBCBreak; +} + +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + + return ignoreinfo; +} +template <> TBCSeverity BCseverityAccessible(bool accessible) +{ + return ESeverityBBCBreak; +} +template <> string ignoreInfo(const HANodeIterator& baseline,const HANodeIterator& current) +{ + string ignoreinfo=KIgnoreInfoNone; + + return ignoreinfo; +} + + +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +//EIssueIdentityClass +//Removal +//ESeveritySCBreak +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + +//Size, +//ESeveritySCNULL, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCNULL; +} + +//Align, +//ESeveritySCNULL, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCNULL; +} + +//Access, +//ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + +//Inheritance, +//ESeveritySCNULL, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCNULL; +} + +//KIssueNotAnalysed +//ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + +//EIssueTypeVirtualBases +//ESeveritySCNULL +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCNULL; +} + +//EIssueTypeBaseSize +//ESeveritySCNULL +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCNULL; +} + + +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +//EIssueIdentityEnumeration, +// Removal, +// {ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + +//Change, +//ESeveritySCNULL, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCNULL; +} + +//Size, +//ESeveritySCNULL, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCNULL; +} + +//Align, +//ESeveritySCNULL, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCNULL; +} + +//Access, +//ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + + +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +//EIssueIdentityExportedFunction, +// Removal, +// {ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + +// Param, +// ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + +// Param non-const to const, +// ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + +// Param const to non-const, +// ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + +// Return, +// ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + +// Return const to non-const, +// ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + +// Return non-const to const, +// ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + +// Access, +// ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + + +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +//EIssueIdentityInlineFunction, +// Removal, +// {ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + +// Param, +// ESeverityInformative, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + +// Param non-const to const, +// ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + +// Param const to non-const, +// ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + +// Return, +// ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + +// Return const to non-const, +// ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + +// Return non-const to const, +// ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + +// Access, +// ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + + +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +//EIssueIdentityExportedVirtualFunction, +// Removal, +// {ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + + +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +//EIssueIdentityVirtualFunction, +// Removal, +// {ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + +// Addition, +// ESeveritySCBNULL, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCNULL; +} + +// Param, +// ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + +// Return, +// ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + +// Access, +// ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + +// OrderChange, +// ESeveritySCNULL, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCNULL; +} + +// KIssueTypeNewOverride, +// ESeveritySCNULL, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCNULL; +} + + +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +//EIssueIdentityStruct, +// Removal, +// {ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + +// BaseSize, +// ESeveritySCNULL, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + return SCseverityAccessible(accessible); +} + +//EIssueTypeNotAnalysed +//ESeveritySCBreak +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + +// Size, +// ESeveritySCNULL, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCNULL; +} + +// Align, +// ESeveritySCNULL, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCNULL; +} + +// Access, +// ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + +// Inheritance, +// ESeveritySCNULL, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCNULL; +} + +//EIssueTypeVirtualBases +//ESeveritySCNULL +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCNULL; +} + + +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +//EIssueIdentityUnion, +// Removal, +// {ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + +// Inheritance, +// {ESeveritySCNULL, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCNULL; +} + +// Size, +// ESeveritySCNULL, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCNULL; +} + +// BaseSize, +// ESeveritySCNULL, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + return SCseverityAccessible(accessible); +} + +// Align, +// ESeveritySCNULL, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCNULL; +} + +// Access, +// ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + +// KIssueNotAnalysed +// ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + +//EIssueTypeVirtualBases +//ESeveritySCNULL +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCNULL; +} + + +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +//EIssueIdentityEnumerationValue, +// Removal, +// {ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + +// ChangeInInitialisation, , +// ESeveritySCNULL, , +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCNULL; +} + +//Access, +//ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + + +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +//EIssueIdentityTypedef, +// Removal, +// {ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + +// Change, +// ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + +//Access, +//ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +//EIssueIdentityVariable, +// Removal, +// {ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + +// ChangeInType, +// ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + +// ChangeInInitialisation, , +// ESeveritySCNULL, , +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCNULL; +} + +//Access, +//ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + + +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +//EIssueIdentityField, +// Removal, +// {ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + +// Addition, +// ESeveritySCNULL, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCNULL; +} + +// Size, +// ESeveritySCNULL, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCNULL; +} + +// Access, +// ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + +// Offset, +// ESeveritySCNULL, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCNULL; +} + +// ChangeInType, +// ESeveritySCBreak, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCBreak; +} + + +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +//EIssueIdentityFieldInaccessible, +// Removal, +// {ESeveritySCNULL, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCNULL; +} + +// Addition, +// ESeveritySCNULL, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCNULL; +} + +// Size, +// ESeveritySCNULL, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCNULL; +} + +// Access, +// ESeveritySCNULL, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCNULL; +} + +// Offset, +// ESeveritySCNULL, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCNULL; +} + +// ChangeInType, +// ESeveritySCNULL, , +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCNULL; +} + + +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +//EIssueIdentityFile, +// KIssueNotAnalysed +// ESeveritySCInformative, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCInformative; +} + +// EIssueTypeUnderConstruction +// ESeveritySCInformative +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + if ( !accessible ) + { + return ESeveritySCNULL; + } + return ESeveritySCInformative; +} + +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +//EIssueIdentityVirtualTable, +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + return ESeveritySCNULL; +} + + +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +//KIdentitySubobject +//Offset +//ESeveritySCNULL +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + return ESeveritySCNULL; +} + +//Removal +//ESeveritySCBreak +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + return ESeveritySCBreak; +} + + +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +//EIssueIdentityVirtualTablePointer +//Addition +//ESeveritySCNULL +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + return ESeveritySCNULL; +} + +//Removal +//ESeveritySCNULL +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + return ESeveritySCNULL; +} + +//Offset +//ESeveritySCNULL +template <> TSCSeverity SCseverityAccessible(bool accessible) +{ + return ESeveritySCNULL; +} + +