<?xml version="1.0" encoding="utf-8"?> <rules version="1.0"> <rule> <id> Renamed_Field </id> <severity> High </severity> <kind> Fields </kind> <change> Field @target has been renamed to @new_value. </change> <effect> Recompilation of a client program may be broken with the error message: @type_name has no member named @target. </effect> </rule> <rule> <id> Used_Reserved_Field </id> <severity> Safe </severity> <kind> Fields </kind> <change> Reserved field @target has been replaced by @new_value. </change> <effect> No effect. </effect> </rule> <rule> <id> Field_Type </id> <severity> Low </severity> <kind> Fields </kind> <change> Type of field @target has been changed from @old_value to @new_value. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Added_Pure_Virtual_Method </id> <severity> High </severity> <kind> V-table </kind> <change> Pure virtual method @target has been added to this class. </change> <effect> Recompilation of a client program may be broken with the error message: cannot allocate an object of abstract type @type_name because the following virtual functions are pure within @type_name: virtual @target. </effect> </rule> <rule> <id> Removed_Pure_Virtual_Method </id> <severity> High </severity> <kind> V-table </kind> <change> Pure_Virtual method @target has been removed from this class. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Overridden_Virtual_Method </id> <severity> Low </severity> <kind> V-table </kind> <change> Virtual method @old_value has been overridden by @new_value. </change> <effect> Method @new_value will be called after recompilation instead of @old_value. </effect> </rule> <rule> <id> Overridden_Virtual_Method_B </id> <severity> Low </severity> <kind> V-table </kind> <change> Virtual method @old_value has been overridden by @new_value. </change> <effect> Method @new_value will be called after recompilation instead of @old_value. </effect> </rule> <rule> <id> Added_Base_Class </id> <severity> Low </severity> <kind> Classes </kind> <change> Base class @target has been added. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Removed_Base_Class </id> <severity> Low </severity> <kind> Classes </kind> <change> Base class @target has been removed. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> DataType_Type </id> <severity> Medium </severity> <kind> Types </kind> <change> Type of this type has been changed from @old_value to @new_value. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Moved_Field </id> <severity> Safe </severity> <kind> Fields </kind> <change> The relative position of field @target has been changed from @old_value to @new_value. </change> <effect> No effect. </effect> </rule> <rule> <id> Added_Field </id> <severity> Low </severity> <kind> Fields </kind> <change> Field @target has been added to this type. </change> <effect> This field will not be initialized or used by old client applications. </effect> </rule> <rule> <id> Added_Union_Field </id> <severity> Safe </severity> <kind> Fields </kind> <change> Field @target has been added to this type. </change> <effect> No effect. </effect> </rule> <rule> <id> Removed_Field </id> <severity> High </severity> <kind> Fields </kind> <change> Field @target has been removed from this type. </change> <effect> Recompilation of a client program may be broken with the error message: '@type_name' has no member named '@target'. </effect> </rule> <rule> <id> Removed_Union_Field </id> <severity> High </severity> <kind> Fields </kind> <change> Field @target has been removed from this union. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Enum_Member_Value </id> <severity> Safe </severity> <kind> Constants </kind> <change> Value of member @target has been changed from @old_value to @new_value. </change> <effect> No effect. </effect> </rule> <rule> <id> Enum_Last_Member_Value </id> <severity> Safe </severity> <kind> Constants </kind> <change> Value of member @target has been changed from @old_value to @new_value. </change> <effect> No effect. </effect> </rule> <rule> <id> Enum_Private_Member_Value </id> <severity> Safe </severity> <kind> Constants </kind> <change> Value of private member @target has been changed from @old_value to @new_value. </change> <effect> No effect. </effect> </rule> <rule> <id> Enum_Member_Removed </id> <severity> High </severity> <kind> Constants </kind> <change> The member @target has been removed. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Enum_Member_Name </id> <severity> High </severity> <kind> Constants </kind> <change> Name of member with value @target has been changed from @old_value to @new_value. </change> <effect> Recompilation of a client program may be broken with the error message: '@old_value' was not declared in this scope. </effect> </rule> <rule> <id> Field_BaseType </id> <severity> Low </severity> <kind> Fields </kind> <change> Base type of field @target has been changed from @old_value to @new_value. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Field_PointerLevel </id> <severity> Medium </severity> <kind> Fields </kind> <change> The pointer level of field @target has been increased from @old_value to @new_value. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Typedef_BaseType </id> <severity> Low </severity> <kind> Types </kind> <change> Base type has been changed from @old_value to @new_value. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Typedef_BaseType_Format </id> <severity> Low </severity> <kind> Types </kind> <change> Base type has been changed from @old_value to @new_value of different format. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Added_Symbol </id> <severity> Safe </severity> <kind> Symbols </kind> </rule> <rule> <id> Removed_Symbol </id> <severity> High </severity> <kind> Symbols </kind> </rule> <rule> <id> Method_Became_Static </id> <severity> Safe </severity> <kind> Symbols </kind> <change> Method became static. </change> <effect> No effect. </effect> </rule> <rule> <id> Method_Became_Non_Static </id> <severity> High </severity> <kind> Symbols </kind> <change> Method became non-static. </change> <effect> Recompilation of a client program may be broken with the error message: cannot call member function @target without object. </effect> </rule> <rule> <id> Parameter_Default_Value_Changed </id> <severity> Safe </severity> <kind> Parameters </kind> <change> The default argument of @param_pos parameter @target has been changed from @old_value to @new_value. </change> <effect> No effect. </effect> </rule> <rule> <id> Parameter_Default_Value_Removed </id> <severity> Medium </severity> <kind> Parameters </kind> <change> The default argument @old_value of @param_pos parameter @target has been removed. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Parameter_Default_Value_Added </id> <severity> Safe </severity> <kind> Parameters </kind> <change> The default argument @new_value of @param_pos parameter @target has been added. </change> <effect> No effect. </effect> </rule> <rule> <id> Parameter_Type </id> <severity> Low </severity> <kind> Parameters </kind> <change> Type of @param_pos parameter @target has been changed from @old_value to @new_value. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Parameter_Type_Format </id> <severity> Medium </severity> <kind> Parameters </kind> <change> Type of parameter @target has been changed from @old_value to @new_value of different format. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Parameter_BaseType_Format </id> <severity> Medium </severity> <kind> Parameters </kind> <change> Base type of parameter @target has been changed from @old_value to @new_value of different format. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Parameter_BaseType </id> <severity> Low </severity> <kind> Parameters </kind> <change> Base type of @param_pos parameter @target has been changed from @old_value to @new_value. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Parameter_Became_Non_Const </id> <severity> Medium </severity> <kind> Parameters </kind> <change> Type of @param_pos parameter @target has been changed from @old_value to @new_value (became non-const). </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Parameter_Removed_Const </id> <severity> Medium </severity> <kind> Parameters </kind> <change> Type of @param_pos parameter @target has been changed from @old_value to @new_value (removed const qualifier). </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Return_Type_Became_Const </id> <severity> Medium </severity> <kind> Symbols </kind> <change> Type of return value became const (has been changed from @old_value to @new_value). </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Return_Type_Added_Const </id> <severity> Medium </severity> <kind> Symbols </kind> <change> Added **const** qualifier to return value (has been changed from @old_value to @new_value). </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Parameter_PointerLevel </id> <severity> Medium </severity> <kind> Parameters </kind> <change> The pointer level of @param_pos parameter @target has been increased from @old_value to @new_value. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Return_Type </id> <severity> Low </severity> <kind> Symbols </kind> <change> Type of return value has been changed from @old_value to @new_value. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Return_Type_From_Void </id> <severity> Safe </severity> <kind> Symbols </kind> <change> Type of return value has been changed from void to @new_value. </change> <effect> No effect. </effect> </rule> <rule> <id> Global_Data_Type </id> <severity> Low </severity> <kind> Symbols </kind> <change> Type of this global data has been changed from @old_value to @new_value. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Global_Data_Type_Format </id> <severity> Medium </severity> <kind> Symbols </kind> <change> Type of this global data has been changed from @old_value to @new_value of different format. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Return_Type_Became_Void </id> <severity> Medium </severity> <kind> Symbols </kind> <change> Type of return value has been changed from @old_value (@old_size) to void. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Global_Data_Became_Non_Const </id> <severity> Safe </severity> <kind> Symbols </kind> <change> This global data became non-const. </change> <effect> No effect. </effect> </rule> <rule> <id> Global_Data_Removed_Const </id> <severity> Safe </severity> <kind> Symbols </kind> <change> Removed **const** qualifier from the type of this global data. </change> <effect> No effect. </effect> </rule> <rule> <id> Global_Data_Became_Const </id> <severity> Medium </severity> <kind> Symbols </kind> <change> This global data became const. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Global_Data_Added_Const </id> <severity> Medium </severity> <kind> Symbols </kind> <change> Added **const** qualifier to the type of this global data. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Return_BaseType </id> <severity> Low </severity> <kind> Symbols </kind> <change> Base type of return value has been changed from @old_value to @new_value. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Return_PointerLevel </id> <severity> Medium </severity> <kind> Symbols </kind> <change> The pointer level of return value has been increased from @old_value to @new_value. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Removed_Parameter </id> <severity> Medium </severity> <kind> Parameters </kind> <change> @param_pos parameter @target has been removed from the calling stack. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Removed_Unnamed_Parameter </id> <severity> Medium </severity> <kind> Parameters </kind> <change> Parameter @target of type @param_type has been removed from the calling stack. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Added_Parameter </id> <severity> Medium </severity> <kind> Parameters </kind> <change> Parameter @target of type @param_type has been added to the calling stack. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Added_Unnamed_Parameter </id> <severity> Medium </severity> <kind> Parameters </kind> <change> @param_pos parameter @target has been added to the calling stack. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Removed_Middle_Parameter </id> <severity> High </severity> <kind> Parameters </kind> <change> @param_pos middle parameter @target has been removed from the calling stack. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Removed_Middle_Unnamed_Parameter </id> <severity> High </severity> <kind> Parameters </kind> <change> Middle parameter @target of type @param_type has been removed from the calling stack. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Added_Middle_Parameter </id> <severity> High </severity> <kind> Parameters </kind> <change> Parameter @target of type @param_type has been added to the calling stack at the middle position. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Added_Middle_Unnamed_Parameter </id> <severity> High </severity> <kind> Parameters </kind> <change> @param_pos parameter @target has been added to the calling stack at the middle position. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Renamed_Parameter </id> <severity> Safe </severity> <kind> Parameters </kind> <change> @param_pos parameter @target has been renamed to @new_value. </change> <effect> No effect. </effect> </rule> <rule> <id> Changed_Constant </id> <severity> Low </severity> <kind> Constants </kind> <change> The value of constant @target has been changed from @old_value to @new_value. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Added_Constant </id> <severity> Safe </severity> <kind> Constants </kind> <change> The constant @target with value @new_value has been added. </change> <effect> No effect. </effect> </rule> <rule> <id> Removed_Constant </id> <severity> Low </severity> <kind> Constants </kind> <change> The constant @target with value @old_value has been removed. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Field_Type_Format </id> <severity> Medium </severity> <kind> Fields </kind> <change> Type of field @target has been changed from @old_value to @new_value of different format. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Field_BaseType_Format </id> <severity> Medium </severity> <kind> Fields </kind> <change> Base type of field @target has been changed from @old_value to @new_value of different format. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Return_Type_Format </id> <severity> Medium </severity> <kind> Symbols </kind> <change> Type of return value has been changed from @old_value to @new_value of different format. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Return_BaseType_Format </id> <severity> Medium </severity> <kind> Symbols </kind> <change> Base type of return value has been changed from @old_value to @new_value of different format. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Parameter_Became_Non_VaList </id> <severity> Medium </severity> <kind> Parameters </kind> <change> Type of @param_pos parameter has been changed from ... (va_list) to @new_value. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Parameter_Became_VaList </id> <severity> Safe </severity> <kind> Parameters </kind> <change> Type of @param_pos parameter @target has been changed from @old_value to ... (va_list). </change> <effect> No effect. </effect> </rule> <rule> <id> Added_Enum_Member </id> <severity> Safe </severity> <kind> Constants </kind> <change> The member @target with value @new_value has been added. </change> <effect> No effect. </effect> </rule> <rule> <id> Symbol_Changed_Parameters </id> <severity> Medium </severity> <kind> Symbols </kind> <change> Parameters list has been changed. </change> <effect> Recompilation of a client program may be broken. </effect> </rule> <rule> <id> Method_Became_Non_Const </id> <severity> Medium </severity> <kind> Symbols </kind> <change> Method became non-const. </change> <effect> Recompilation of a client program may be broken with the error message: passing 'const @type_name' as 'this' argument of '@target' discards qualifiers. </effect> </rule> <rule> <id> Method_Became_Const </id> <severity> Safe </severity> <kind> Symbols </kind> <change> Method became const. </change> <effect> No effect. </effect> </rule> <rule> <id> Method_Became_Volatile </id> <severity> Safe </severity> <kind> Symbols </kind> <change> Method became volatile. </change> <effect> No effect. </effect> </rule> <rule> <id> Method_Became_Non_Volatile </id> <severity> Safe </severity> <kind> Symbols </kind> <change> Method became non-volatile. </change> <effect> No effect. </effect> </rule> <rule> <id> Parameter_Became_Restrict </id> <severity> Safe </severity> <kind> Parameters </kind> <change> Parameter @target became restrict. </change> <effect> No effect. </effect> </rule> <rule> <id> Parameter_Became_Non_Restrict </id> <severity> Safe </severity> <kind> Parameters </kind> <change> Parameter @target became non-restrict. </change> <effect> No effect. </effect> </rule> <rule> <id> Field_Became_Volatile </id> <severity> Safe </severity> <kind> Fields </kind> <change> Field @target became volatile. </change> <effect> No effect. </effect> </rule> <rule> <id> Field_Became_Non_Volatile </id> <severity> Safe </severity> <kind> Fields </kind> <change> Field @target became non-volatile. </change> <effect> No effect. </effect> </rule> <rule> <id> Return_Value_Became_Volatile </id> <severity> Safe </severity> <kind> Symbols </kind> <change> Return value became volatile. </change> <effect> No effect. </effect> </rule> <rule> <id> Parameter_Became_Non_Volatile </id> <severity> Safe </severity> <kind> Symbols </kind> <change> Parameter @target became non-volatile. </change> <effect> No effect. </effect> </rule> <rule> <id> Global_Data_Value_Changed </id> <severity> Safe </severity> <kind> Symbols </kind> <change> The initial value of this global data has been changed from @old_value to @new_value. </change> <effect> No effect. </effect> </rule> <rule> <id> Field_Became_Mutable </id> <severity> Safe </severity> <kind> Fields </kind> <change> Field @target became **mutable**. </change> <effect> No effect. </effect> </rule> <rule> <id> Field_Became_Non_Mutable </id> <severity> Medium </severity> <kind> Fields </kind> <change> Field @target became **non-mutable**. </change> <effect> Recompilation of a client program may be broken with the error message: assignment of member '@type_name::@target' in read-only object. </effect> </rule> <rule> <id> Removed_Const_Overload </id> <severity> Medium </severity> <kind> Types </kind> <change> The **const** overload of the method @target has been removed from this class. </change> <effect> Recompilation of a client program may be broken with the error message: passing 'const @type_name' as 'this' argument of '@target' discards qualifiers. </effect> </rule> <rule> <id> Method_Became_Private </id> <severity> High </severity> <kind> Symbols </kind> <change> This method became **private**. </change> <effect> Recompilation of a client program may be broken with the error message: '@target' is private. </effect> </rule> <rule> <id> Method_Became_Protected </id> <severity> Medium </severity> <kind> Symbols </kind> <change> This method became **protected**. </change> <effect> Recompilation of a client program may be broken with the error message: '@target' is protected. </effect> </rule> <rule> <id> Method_Became_Public </id> <severity> Safe </severity> <kind> Symbols </kind> <change> This method became **public**. </change> <effect> No effect. </effect> </rule> <rule> <id> Global_Data_Became_Private </id> <severity> High </severity> <kind> Symbols </kind> <change> This global data became **private**. </change> <effect> Recompilation of a client program may be broken with the error message: '@target' is private. </effect> </rule> <rule> <id> Global_Data_Became_Protected </id> <severity> Medium </severity> <kind> Symbols </kind> <change> This global data became **protected**. </change> <effect> Recompilation of a client program may be broken with the error message: '@target' is protected. </effect> </rule> <rule> <id> Global_Data_Became_Public </id> <severity> Safe </severity> <kind> Symbols </kind> <change> This global data became **public**. </change> <effect> No effect. </effect> </rule> <rule> <id> Field_Became_Const </id> <severity> Medium </severity> <kind> Types </kind> <change> Field @target became **const**. </change> <effect> Recompilation of a client program may be broken with the error message: assignment of read-only member/location '@type_name::@target'. </effect> </rule> <rule> <id> Field_Became_Non_Const </id> <severity> Safe </severity> <kind> Types </kind> <change> Field @target became **non-const**. </change> <effect> No effect. </effect> </rule> <rule> <id> Field_Added_Const </id> <severity> Low </severity> <kind> Types </kind> <change> Added **const** qualifier to field @target. </change> <effect> Recompilation of a client program may be broken with the error message: assignment of read-only member/location '@type_name::@target'. </effect> </rule> <rule> <id> Field_Removed_Const </id> <severity> Safe </severity> <kind> Types </kind> <change> Removed **const** qualifier from field @target. </change> <effect> No effect. </effect> </rule> <rule> <id> Field_Became_Private </id> <severity> Medium </severity> <kind> Types </kind> <change> Field @target became **private**. </change> <effect> Recompilation of a client program may be broken with the error message: '@type_name::@target' is private. </effect> </rule> <rule> <id> Field_Became_Protected </id> <severity> Medium </severity> <kind> Types </kind> <change> Field @target became **protected**. </change> <effect> Recompilation of a client program may be broken with the error message: '@type_name::@target' is protected. </effect> </rule> <rule> <id> Virtual_Method_Became_Pure </id> <severity> Medium </severity> <kind> Types </kind> <change> Virtual method @target became **pure**. </change> <effect> Recompilation of a client program may be broken with the error message: cannot allocate an object of abstract type '@type_name' because the following virtual functions are pure within '@type_name': virtual @target. </effect> </rule> <rule> <id> Virtual_Method_Became_Non_Pure </id> <severity> Safe </severity> <kind> Types </kind> <change> Virtual method @target became **non-pure**. </change> <effect> No effect. </effect> </rule> <rule> <id> Type_Became_Opaque </id> <severity> Medium </severity> <kind> Types </kind> <change> This type became **opaque**. </change> <effect> The internal structure of this type is hidden in the new library version and recompilation of a client program may be broken. </effect> </rule> </rules>