blob: 028af61685f7119c9f795b8a198bc6be2f082fcf [file] [log] [blame]
<?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>