Added_Virtual_Method High V-table Virtual method @target has been added to this class. The layout of v-table has been changed. Call of any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. You should add several padding virtual methods at end of class declaration and use them one by one in the course of interface evolution. Added_Pure_Virtual_Method High V-table Pure virtual method @target has been added to this class. 1) Applications will not provide the implementation for this pure virtual method and therefore cause a crash in the library trying to call this method. 2) The layout of v-table has been changed. Call of any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. Added_Virtual_Method_At_End_Of_Leaf_Copying_Class Medium V-table Virtual method @target has been added to this class. The layout of v-table has been changed. This leaf class has no exported constructors and therefore applications will copy an old v-table of the class that will not contain a pointer to added virtual method. Call of any method in this class may result in crash or incorrect behavior of applications. NOTE: if new virtual method is called only from other new methods, then binary compatibility should not be affected. Added_Virtual_Method_At_End_Of_Leaf_Allocable_Class Safe V-table Virtual method @target has been added to this class. No effect. You can add virtual functions at end of leaf classes with exported constructors. Added_First_Virtual_Method High V-table First virtual method @target has been added to this class. 1) The layout of type structure has been shifted by @word_size bytes by the added v-table pointer. 2) Size of class has been increased by @word_size bytes. Removed_Virtual_Method High V-table Virtual method @target has been removed from this class. The layout of v-table has been changed. Call of this virtual method or any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. Removed_Pure_Virtual_Method High V-table Pure virtual method @target has been removed from this class. The layout of v-table has been changed. Call of this virtual method or any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. Removed_Last_Virtual_Method High V-table Last virtual method @target has been removed from this class. 1) The layout of type structure has been shifted by @word_size bytes by the removed v-table pointer. 2) Size of class has been decreased by @word_size bytes. Virtual_Replacement Medium V-table Virtual method @target has been added to this class instead of @old_value. Applications will pass parameters of older replaced method to newly added virtual method. This may result in crash or incorrect behavior of applications. Pure_Virtual_Replacement Medium V-table Pure virtual method @target has been added to this class instead of @old_value. Applications will provide an older method to the library instead of expected newely added virtual method. This may result in crash or incorrect behavior of applications. Virtual_Table_Changed_Unknown Medium V-table The layout of v-table has been changed for **unknown** reason. Call of any method in this class may result in crash or incorrect behavior of applications. Virtual_Method_Position High V-table The relative position of virtual method @target has been changed from @old_value to @new_value. The layout of v-table has been changed. Call of this virtual method may result in crash or incorrect behavior of applications. Pure_Virtual_Method_Position High V-table The relative position of pure virtual method @target has been changed from @old_value to @new_value. The layout of v-table has been changed. Call of this pure virtual method implementation may result in crash or incorrect behavior of applications. Overridden_Virtual_Method Low V-table Virtual method @old_value has been overridden by @new_value. Method @new_value will be called instead of @old_value by old applications. Overridden_Virtual_Method_B Low V-table Virtual method @old_value has been overridden by @new_value. Method @new_value will be called instead of @old_value by old applications. Size_Of_Allocable_Class_Increased High Classes Size of this class has been increased from @old_size to @new_size. 1) An object of this class can be allocated by the applications and old size will be hardcoded at the compile time. Call of any exported constructor will break the memory of neighboring objects on the stack or heap. 2) The memory layout and size of subclasses will be changed. Size_Of_Allocable_Class_Decreased Medium Classes Size of this class has been decreased from @old_size to @new_size. Previous accesses of applications to public fields of this class or its subclasses may be incorrect. Size_Of_Copying_Class High Classes Size of this class has been changed from @old_size to @new_size. 1) The class has only inline or auto-generated constructors which will be copied to applications at compile time and will allocate an older memory layout. Call of any exported method of this class may access a memory outside the allocated objects or inside the older memory structure and result in crash or incorrect behavior of applications. 2) The memory layout and size of subclasses will be changed. Base_Class_Position Low Classes The relative position of class @target has been changed from @old_value to @new_value in the list of base classes. Possible incorrect access of applications to the memory occupied by the base classes. Base_Class_Became_Virtually_Inherited Medium Classes Base class @target became **virtually** inherited. Size, memory layout and v-table layout of this class and subclasses may change. Base_Class_Became_Non_Virtually_Inherited Medium Classes Base class @target became **non-virtually** inherited. Size, memory layout and v-table layout of this class and subclasses may change. Added_Base_Class_And_Shift High Classes Base class @target has been added. The memory layout in this class has been shifted by @shift bytes. Added_Base_Class_And_Size High Classes Base class @target has been added. 1) Size of the class has been changed from @old_size to @new_size. 2) The memory layout in this class has been shifted by @shift bytes. Added_Base_Class_And_Shift_And_VTable High Classes Base class @target has been added. 1) The layout of v-table in this class has been changed. 2) The memory layout in this class has been shifted by @shift bytes. Added_Base_Class_And_Size_And_VTable High Classes Base class @target has been added. 1) The layout of v-table in this class has been changed. 2) Size of the class has been changed from @old_size to @new_size. 3) The memory layout in this class has been shifted by @shift bytes. Added_Base_Class_And_VTable High Classes Base class @target has been added. The layout of v-table in this class has been changed. Added_Base_Class Low Classes Base class @target has been added. Possible incorrect access of applications to the memory occupied by the base classes. Removed_Base_Class_And_Size High Classes Base class @target has been removed. 1) Size of the class has been changed from @old_size to @new_size. 2) The memory layout in this class has been shifted by @shift bytes. Removed_Base_Class_And_Shift High Classes Base class @target has been removed. The memory layout in this class has been shifted by @shift bytes. Removed_Base_Class_And_Shift_And_VTable High Classes Base class @target has been removed. 1) The layout of v-table in this class has been changed. 2) The memory layout in this class has been shifted by @shift bytes. Removed_Base_Class_And_Size_And_VTable High Classes Base class @target has been removed. 1) The layout of v-table in this class has been changed. 2) Size of the class has been changed from @old_size to @new_size. 3) The memory layout in this class has been shifted by @shift bytes. Removed_Base_Class_And_VTable High Classes Base class @target has been removed. The layout of v-table in this class has been changed. Removed_Base_Class Low Classes Base class @target has been removed. Possible incorrect access of applications to the memory occupied by the base classes. DataType_Size Low Types Size of this type has been changed from @old_size to @new_size. The fields or parameters of such data type may be incorrectly initialized or accessed by old client applications. DataType_Type Medium Types Type of this type has been changed from @old_value to @new_value. The fields or parameters of such data type may be incorrectly initialized or accessed by old client applications. DataType_Size_And_Stack High Types Size of this type has been changed from @old_size to @new_size. Layout of parameter's stack of several functions has been changed and therefore parameters at higher positions in the stack may be incorrectly initialized by applications. Moved_Field Medium Fields The relative position of field @target has been changed from @old_value to @new_value. Applications will access incorrect memory when attempting to access this field. Moved_Field_And_Size Medium Fields The relative position of field @target has been changed from @old_value to @new_value. 1) Applications will access incorrect memory when attempting to access this field. 2) Size of the inclusive type has been changed. Moved_Private_Field_And_Size Low Fields The relative position of private field @target has been changed from @old_value to @new_value. Size of the inclusive type has been changed. Added_Field Low Fields Field @target has been added to this type. This field will not be initialized by old clients. NOTE: this field should be accessed only from the new library functions, otherwise it may result in crash or incorrect behavior of applications. Added_Field_And_Size Low Fields Field @target has been added to this type. 1) This field will not be initialized by old clients. 2) Size of the inclusive type has been changed. NOTE: this field should be accessed only from the new library functions, otherwise it may result in crash or incorrect behavior of applications. Added_Field_And_Layout Medium Fields Field @target has been added at the middle position of this structural type. Layout of structure fields has been changed and therefore fields at higher positions of the structure definition may be incorrectly accessed by applications. Added_Field_And_Layout_And_Size Medium Fields Field @target has been added at the middle position of this structural type. 1) Size of the inclusive type has been changed. 2) Layout of structure fields has been changed and therefore fields at higher positions of the structure definition may be incorrectly accessed by applications. Added_Private_Field_And_Size Low Fields Field @target has been added to this type. Size of the inclusive type has been changed. NOTE: this field should be accessed only from the new library functions, otherwise it may result in crash or incorrect behavior of applications. Added_Private_Field_And_Layout Medium Fields Field @target has been added at the middle position of this structural type. Layout of structure fields has been changed and therefore fields at higher positions of the structure definition may be incorrectly accessed by applications. Added_Private_Field_And_Layout_And_Size Medium Fields Field @target has been added at the middle position of this structural type. 1) Size of the inclusive type has been changed. 2) Layout of structure fields has been changed and therefore fields at higher positions of the structure definition may be incorrectly accessed by applications. Added_Union_Field_And_Size Medium Fields Field @target has been added to this type. Size of the union has been changed. NOTE: this field should be accessed only from the new library functions, otherwise it may result in crash or incorrect behavior of applications. Added_Union_Field Low Fields Field @target has been added to this type. NOTE: this field should be accessed only from the new library functions, otherwise it may result in crash or incorrect behavior of applications. Removed_Field Medium Fields Field @target has been removed from this type. Applications will access incorrect memory when attempting to access this field. Removed_Field_And_Layout Medium Fields Field @target has been removed from the middle position of this structural type. 1) Applications will access incorrect memory when attempting to access this field. 2) Layout of structure fields has been changed and therefore fields at higher positions of the structure definition may be incorrectly accessed by applications. Removed_Field_And_Size Medium Fields Field @target has been removed from this type. 1) Applications will access incorrect memory when attempting to access this field. 2) Size of the inclusive type has been changed. Removed_Field_And_Layout_And_Size High Fields Field @target has been removed from the middle position of this structural type. 1) Previous accesses of applications to the removed field will be incorrect. 2) Layout of structure fields has been changed and therefore fields at higher positions of the structure definition may be incorrectly accessed by applications. Removed_Private_Field_And_Size Low Fields Field @target has been removed from this type. Size of the inclusive type has been changed. Removed_Private_Field_And_Layout Medium Fields Field @target has been removed from the middle position of this structural type. Layout of structure fields has been changed and therefore fields at higher positions of the structure definition may be incorrectly accessed by applications. Removed_Private_Field_And_Layout_And_Size Medium Fields Field @target has been removed from the middle position of this structural type. 1) Layout of structure fields has been changed and therefore fields at higher positions of the structure definition may be incorrectly accessed by applications. 2) Size of the inclusive type has been changed. Removed_Union_Field_And_Size Medium Fields Field @target has been removed from this union. 1) Applications may access incorrect memory when attempting to access this field. 2) Size of the union has been changed. Removed_Union_Field Low Fields Field @target has been removed from this union. Applications may access incorrect memory when attempting to access this field. Renamed_Field Low Fields Field @target has been renamed to @new_value. Renaming of a field in data type may indicate a change in the semantic meaning of the field. Used_Reserved_Field Low Fields Reserved field @target has been replaced by @new_value. This field will not be initialized by old clients. Enum_Member_Value Medium Constants Value of member @target has been changed from @old_value to @new_value. Applications may execute a wrong branch of code in the library and therefore change the behavior. Enum_Member_Removed Low Constants The member @target has been removed. This may result in crash or incorrect behavior of applications because the library may not handle removed member anymore. Enum_Last_Member_Value Low Constants Value of member @target has been changed from @old_value to @new_value. Applications may execute a wrong branch of code in the library and therefore change the behavior. Enum_Private_Member_Value Safe Constants Value of private member @target has been changed from @old_value to @new_value. No effect. Enum_Member_Name Low Constants Name of member with value @target has been changed from @old_value to @new_value. Applications may execute a wrong branch of code in the library and therefore change the behavior. Field_Type Low Fields Type of field @target has been changed from @old_value to @new_value. Replacement of the field data type may indicate a change in the semantic meaning of the field. Field_Type_And_Size Medium Fields Type of field @target has been changed from @old_value (@old_size) to @new_value (@new_size). This field may be incorrectly initialized or accessed by applications. Field_Type_And_Size_And_Layout Medium Fields Type of field @target has been changed from @old_value (@old_size) to @new_value (@new_size). Previous accesses of applications and library functions to this field and fields at higher positions of the structure definition may be broken. Field_Type_And_Size_And_Type_Size Medium Fields Type of field @target has been changed from @old_value (@old_size) to @new_value (@new_size). 1) This field may be incorrectly initialized or accessed by applications. 2) Size of the inclusive type has been changed. Field_Type_And_Size_And_Layout_And_Type_Size Medium Fields Type of field @target has been changed from @old_value (@old_size) to @new_value (@new_size). 1) Size of the inclusive type has been changed. 2) Previous accesses of applications and library functions to this field and fields at higher positions of the structure definition may be broken. Private_Field_Type_And_Size_And_Layout Medium Fields Type of field @target has been changed from @old_value (@old_size) to @new_value (@new_size). Previous accesses of applications and library functions to the fields at higher positions of the structure definition may be broken. Private_Field_Type_And_Size Safe Fields Type of field @target has been changed from @old_value (@old_size) to @new_value (@new_size). No effect. Private_Field_Type_And_Size_And_Type_Size Low Fields Type of field @target has been changed from @old_value (@old_size) to @new_value (@new_size). Size of the inclusive type has been changed. Private_Field_Type_And_Size_And_Layout_And_Type_Size Medium Fields Type of field @target has been changed from @old_value (@old_size) to @new_value (@new_size). 1) Size of the inclusive type has been changed. 2) Previous accesses of applications and library functions to the fields at higher positions of the structure definition may be broken. Field_BaseType_And_Size Low Fields Base type of field @target has been changed from @old_value (@old_size) to @new_value (@new_size). Possible access of applications to incorrect memory through the pointer. Field_BaseType Low Fields Base type of field @target has been changed from @old_value to @new_value. Replacement of field base type may indicate a change in the semantic meaning of the field. Field_PointerLevel_Increased Medium Fields The pointer level of field @target has been increased from @old_value to @new_value. The library functions may try to access unallocated memory by the dereferencing of old field value and therefore cause a crash of applications. Field_PointerLevel_Decreased Low Fields The pointer level of field @target has been decreased from @old_value to @new_value. The library functions will treat the value of this field as the lower-dimension array and will not read all elements. This may change the behavior of applications. Field_Size Medium Fields Size of field @target has been changed from @old_size to @new_size. Previous accesses of applications and library functions to this field may be broken. Struct_Field_Size_Increased Low Fields Size of field @target has been changed from @old_size to @new_size. Previous accesses of applications and library functions to this field may be broken. Field_Size_And_Layout Medium Fields Size of field @target has been changed from @old_size to @new_size. Previous accesses of applications and library functions to this field and fields at higher positions of the structure definition may be broken. Field_Size_And_Type_Size Medium Fields Size of field @target has been changed from @old_size to @new_size. 1) Size of the inclusive type has been changed. 2) Previous accesses of applications and library functions to this field may be broken. Field_Size_And_Layout_And_Type_Size Medium Fields Size of field @target has been changed from @old_size to @new_size. 1) Size of the inclusive type has been changed. 2) Previous accesses of applications and library functions to this field and fields at higher positions of the structure definition may be broken. Private_Field_Size_And_Layout Medium Fields Size of field @target has been changed from @old_size to @new_size. Previous accesses of applications and library functions to the fields at higher positions of the structure definition may be broken. Private_Field_Size Safe Fields Size of field @target has been changed from @old_size to @new_size. No effect. Private_Field_Size_And_Type_Size Low Fields Size of field @target has been changed from @old_size to @new_size. Size of the inclusive type has been changed. Private_Field_Size_And_Layout_And_Type_Size Medium Fields Size of field @target has been changed from @old_size to @new_size. 1) Size of the inclusive type has been changed. 2) Previous accesses of applications and library functions to the fields at higher positions of the structure definition may be broken. Typedef_BaseType Low Types Base type has been changed from @old_value to @new_value. Replacement of the base data type may indicate a change in its semantic meaning. Typedef_BaseType_Format Medium Types Base type has been changed from @old_value to @new_value of different format. The fields or parameters of such data type may be incorrectly initialized or accessed by old client applications. Added_Symbol Safe Symbols Removed_Symbol High Symbols Method_Became_Static High Symbols Method became static. Layout of parameter's stack has been changed and therefore parameters at higher positions in the stack may be incorrectly initialized by applications. Method_Became_Non_Static High Symbols Method became non-static. Layout of parameter's stack has been changed and therefore parameters at higher positions in the stack may be incorrectly initialized by applications. Parameter_Default_Value_Changed Low Parameters The default argument of @param_pos parameter @target has been changed from @old_value to @new_value. Applications will pass an old default (compile-time) argument that may not be properly handled anymore. This may result in crash or incorrect behavior of applications. Parameter_Default_Value_Removed Low Parameters The default argument @old_value of @param_pos parameter @target has been removed. Applications will pass an old default argument (that is not default any more) that may not be properly handled anymore. This may result in crash or incorrect behavior of applications. Parameter_Default_Value_Added Safe Parameters The default argument @new_value of @param_pos parameter @target has been added. No effect. Parameter_Type_And_Register Medium Symbols Type of @param_pos parameter @target has been changed from @old_value (@old_size) to @new_value (@new_size). The parameter became passed in different register. Applications will read the wrong memory block instead of the parameter value. Also, distribution of other parameters on the available registers and stack may be changed. Parameter_Type_And_Stack High Parameters Type of @param_pos parameter @target has been changed from @old_value (@old_size) to @new_value (@new_size). Layout of parameter's stack has been changed and therefore parameters at higher positions in the stack may be incorrectly initialized by applications. Parameter_Type_And_Size High Parameters Type of @param_pos parameter @target has been changed from @old_value (@old_size) to @new_value (@new_size). Layout of parameter's stack has been changed and therefore parameters at higher positions in the stack may be incorrectly initialized by applications. Parameter_Type_From_Stack_To_Register High Parameters Type of @param_pos parameter @target has been changed from @old_value (@old_size) to @new_value (@new_size). The parameter became passed in the register instead of the stack. This may result in crash or incorrect behavior of applications. Parameter_Type_From_Register_To_Stack High Parameters Type of @param_pos parameter @target has been changed from @old_value (@old_size) to @new_value (@new_size). The parameter became passed through the stack instead of the register. This may result in crash or incorrect behavior of applications. Parameter_Type Low Parameters Type of @param_pos parameter @target has been changed from @old_value to @new_value. Replacement of parameter data type may indicate a change in its semantic meaning. Parameter_Became_Non_Const Medium Parameters Type of @param_pos parameter @target has been changed from @old_value to @new_value (became non-const). This function may change parameter @target, but it will be treated as const by old client applications. This may result in crash or incorrect behavior of applications. Parameter_Removed_Const Medium Parameters Type of @param_pos parameter @target has been changed from @old_value to @new_value (removed const qualifier). This function may change parameter @target, but it will be treated as const by old client applications. This may result in crash or incorrect behavior of applications. Parameter_Became_Restrict Medium Parameters Parameter @target became restrict. Added a new restriction on the parameter: if the memory addressed by the restrict-qualified pointer is modified, no other pointer will access that same memory. The compiler may choose to optimize new library code involving restrict-qualified pointers in a way that might result in incorrect behavior of old applications, that don't meet this restriction. Parameter_Became_Non_Restrict Safe Parameters Parameter @target became non-restrict. No effect. Parameter_Became_Register Medium Parameters Added register modifier to the parameter @target. The parameter may be passed in a register instead of the calling stack. Parameter_Became_Non_Register Medium Parameters Removed register modifier from the parameter @target. The parameter will be passed on the calling stack instead of a register. Parameter_To_Register Medium Parameters The parameter @target became passed in @new_value register instead of stack. Violation of the calling convention. This may result in crash or incorrect behavior of applications. Parameter_From_Register Medium Parameters The parameter @target became passed on stack instead of @old_value register. Violation of the calling convention. This may result in crash or incorrect behavior of applications. Parameter_Changed_Register High Symbols The parameter @target became passed in @new_value register instead of @old_value. Applications will read the wrong memory block instead of the parameter value. Parameter_Changed_Offset High Symbols The parameter @target became passed at the different offset on the stack (@new_value instead of @old_value). Violation of the calling convention. This may result in crash or incorrect behavior of applications. Return_Type_Became_Const Medium Symbols Type of return value became const (has been changed from @old_value to @new_value). The return value will be treated as non-const by old client applications. This may result in crash or incorrect behavior of applications. Return_Type_Added_Const Medium Symbols Added **const** qualifier to return value (has been changed from @old_value to @new_value). The return value will be treated as non-const by old client applications. This may result in crash or incorrect behavior of applications. Parameter_BaseType_And_Size Medium Parameters Base type of @param_pos parameter @target has been changed from @old_value (@old_size) to @new_value (@new_size). This parameter may be incorrectly initialized by applications. Parameter_BaseType Low Parameters Base type of @param_pos parameter @target has been changed from @old_value to @new_value. Replacement of parameter base type may indicate a change in its semantic meaning. Parameter_PointerLevel_Increased High Parameters The pointer level of @param_pos parameter @target has been increased from @old_value to @new_value. The library function may try to access unallocated memory by the dereferencing of old parameter value and therefore cause a crash of applications. Parameter_PointerLevel_Decreased Medium Parameters The pointer level of @param_pos parameter @target has been decreased from @old_value to @new_value. The library function will treat the parameter as the lower-dimension array and will not read all elements. This may change the behavior of applications. NOTE: if this is out-parameter then this change may cause a crash of applications. Return_Type_And_Size Medium Symbols Type of return value has been changed from @old_value (@old_size) to @new_value (@new_size). Applications will obtain a different return value and execution may change. Global_Data_Type_And_Size Medium Symbols Type of this global data has been changed from @old_value (@old_size) to @new_value (@new_size). Applications will obtain a different value and execution may change. Return_Type Low Symbols Type of return value has been changed from @old_value to @new_value. Replacement of return type may indicate a change in its semantic meaning. Global_Data_Type Low Symbols Type of this global data has been changed from @old_value to @new_value. Replacement of data type may indicate a change in semantic meaning. Global_Data_Type_Format Medium Symbols Type of this global data has been changed from @old_value to @new_value of different format. This global data may be incorrectly accessed by applications. Global_Data_Size Medium Symbols Size of this global data has been changed from @old_size to @new_size. Applications will obtain a different value and execution may change. Return_Type_Became_Void Medium Symbols Type of return value has been changed from @old_value (@old_size) to void. Applications will not obtain a return value and execution may change. Return_Type_Became_Void_And_Stack_Layout High Symbols Type of return value has been changed from @old_value (@old_size) to void. 1) Applications will read the wrong memory block instead of the return value. 2) Layout of parameter's stack has been shifted by @word_size bytes because the hidden first argument, that is used to pass the return value, has been removed. All the parameters will be incorrectly initialized by applications. Return_Type_Became_Void_And_Register High Symbols Type of return value has been changed from @old_value (@old_size) to void. 1) Applications will read the wrong memory block instead of the return value. 2) Distribution of parameters on the available registers and stack has been changed because the hidden first argument, that is used to pass the return value, has been removed. All the parameters will be incorrectly initialized by applications. Return_Type_From_Void_And_Stack_Layout High Symbols Type of return value has been changed from void to @new_value (@new_size). Layout of parameter's stack has been shifted by @word_size bytes because the return value became passed in memory as the hidden first argument, that was used to pass the return value. All the parameters will be incorrectly initialized by applications. Return_Type_From_Void_And_Register High Symbols Type of return value has been changed from void to @new_value (@new_size). Distribution of parameters on the available registers and stack has been changed because the return value became passed in memory as the hidden first argument, that is used to pass the return value. All the parameters will be incorrectly initialized by applications. Return_Type_From_Void Low Symbols Type of return value has been changed from void to @new_value (@new_size). Replacement of return type may indicate a change in its semantic meaning. Return_Type_From_Register_To_Stack High Symbols Type of return value has been changed from @old_value (@old_size) to @new_value (@new_size). 1) The return value became passed in memory as the hidden first argument (address of the space on the stack provided by the caller) instead of the register and therefore the layout of parameter's stack has been shifted by @word_size bytes. All the parameters will be incorrectly initialized by applications. 2) Applications will read the wrong memory block instead of the return value. Return_Type_And_Register_Became_Hidden_Parameter High Symbols Type of return value has been changed from @old_value (@old_size) to @new_value (@new_size). 1) The return value became passed in different register as the hidden first argument (address of the space on the stack provided by the caller) and therefore distribution of parameters on the available registers and stack will be changed. All the parameters will be incorrectly initialized by applications. 2) Applications will read the wrong memory block instead of the return value. Return_Type_From_Stack_To_Register High Symbols Type of return value has been changed from @old_value (@old_size) to @new_value (@new_size). 1) The return value became passed in register instead of the hidden first argument (address of the space on the stack provided by the caller) and therefore the layout of parameter's stack has been shifted by @word_size bytes. All the parameters will be incorrectly initialized by applications. 2) Applications will read the wrong memory block instead of the return value. Return_Type_And_Register_Was_Hidden_Parameter High Symbols Type of return value has been changed from @old_value (@old_size) to @new_value (@new_size). 1) The return value became passed in register instead of the hidden first argument, that is passed in different register, and therefore distribution of parameters on the available registers and stack will be changed. All the parameters will be incorrectly initialized by applications. 2) Applications will read the wrong memory block instead of the return value. Global_Data_Became_Non_Const Medium Symbols This global data became non-const. This data will be copied to applications at compile time. Any attempts to change this global data by library functions may result in crash of applications. Global_Data_Removed_Const Low Symbols Removed **const** qualifier from the type of this global data. This data will be treated as const by old client applications. Any attempts to change this global data by library functions may result in undefined behavior. Global_Data_Became_Const Medium Symbols This global data became const. Any attempts of old applications to change this global data may result in crash. Global_Data_Added_Const Medium Symbols Added **const** qualifier to the type of this global data. Any attempts of old applications to change this global data may result in crash. Return_BaseType_And_Size Medium Symbols Base type of return value has been changed from @old_value (@old_size) to @new_value (@new_size). Applications will obtain a different return value and execution may change. Return_BaseType Low Symbols Base type of return value has been changed from @old_value to @new_value. Replacement of return base type may indicate a change in its semantic meaning. Return_PointerLevel_Increased Low Symbols The pointer level of return value has been increased from @old_value to @new_value. Applications will treat the return value as the lower-dimension array and will not read all elements. This may change the behavior of applications. Return_PointerLevel_Decreased Medium Symbols The pointer level of return value has been decreased from @old_value to @new_value. Applications may try to access unallocated memory by the dereferencing of new return value and therefore cause a crash. Removed_Parameter Medium Parameters @param_pos parameter @target has been removed from the calling stack. This parameter will be ignored by the function. Removed_Unnamed_Parameter Medium Parameters Parameter @target of type @param_type has been removed from the calling stack. This parameter will be ignored by the function. Added_Parameter Medium Parameters Parameter @target of type @param_type has been added to the calling stack. This parameter will not be initialized by old clients. Added_Unnamed_Parameter Medium Parameters @param_pos parameter @target has been added to the calling stack. This parameter will not be initialized by old clients. Removed_Middle_Parameter High Parameters @param_pos middle parameter @target has been removed from the calling stack. Layout of parameter's stack has been changed and therefore parameters at higher positions in the stack may be incorrectly initialized by applications. Removed_Middle_Unnamed_Parameter High Parameters Middle parameter @target of type @param_type has been removed from the calling stack. Layout of parameter's stack has been changed and therefore parameters at higher positions in the stack may be incorrectly initialized by applications. Added_Middle_Parameter High Parameters Parameter @target of type @param_type has been added to the calling stack at the middle position. Layout of parameter's stack has been changed and therefore parameters at higher positions in the stack may be incorrectly initialized by applications. Added_Middle_Unnamed_Parameter High Parameters @param_pos parameter @target has been added to the calling stack at the middle position. Layout of parameter's stack has been changed and therefore parameters at higher positions in the stack may be incorrectly initialized by applications. Renamed_Parameter Low Parameters @param_pos parameter @target has been renamed to @new_value. Renaming of a parameter may indicate a change in its semantic meaning. Symbol_Became_Static High Symbols Method became static. The name of the appropriate symbol for this function on binary level has been changed from @old_value to @new_value. This may cause "undefined reference" linker error in old client applications. Symbol_Became_Non_Static High Symbols Method became non-static. The name of the appropriate symbol for this function on binary level has been changed from @old_value to @new_value. This may cause "undefined reference" linker error in old client applications. Symbol_Became_Virtual High Symbols Method became virtual. The name of the appropriate symbol for this function on binary level has been changed from @old_value to @new_value. This may cause "undefined reference" linker error in old client applications. Symbol_Became_Non_Virtual High Symbols Method became non-virtual. The name of the appropriate symbol for this function on binary level has been changed from @old_value to @new_value. This may cause "undefined reference" linker error in old client applications. Symbol_Changed_Return High Symbols Type of return value has been changed from @old_type to @new_type. The name of the appropriate symbol for this function on binary level has been changed from @old_value to @new_value. This may cause "undefined reference" linker error in old client applications. Global_Data_Symbol_Changed_Type High Symbols Type of this global data has been changed from @old_type to @new_type. The name of the appropriate symbol for this data on binary level has been changed from @old_value to @new_value. This may cause "undefined reference" linker error in old client applications. Symbol_Changed_Parameters High Symbols Parameters list has been changed. The name of the appropriate symbol for this function on binary level has been changed from @old_value to @new_value. This may cause "undefined reference" linker error in old client applications. Method_Became_Non_Const High Symbols Method became non-const. The name of the appropriate symbol for this function on binary level has been changed from @old_value to @new_value. This may cause "undefined reference" linker error in old client applications. Method_Became_Const High Symbols Method became const. The name of the appropriate symbol for this function on binary level has been changed from @old_value to @new_value. This may cause "undefined reference" linker error in old client applications. Method_Became_Volatile High Symbols Method became volatile. The name of the appropriate symbol for this function on binary level has been changed from @old_value to @new_value. This may cause "undefined reference" linker error in old client applications. Method_Became_Non_Volatile High Symbols Method became non-volatile. The name of the appropriate symbol for this function on binary level has been changed from @old_value to @new_value. This may cause "undefined reference" linker error in old client applications. Changed_Constant Low Constants The value of constant @target has been changed from @old_value to @new_value. Applications will pass an old value of this constant as the parameter to the new-version library functions, that expect a new one. This may result in crash of incorrect behavior of applications. Added_Constant Safe Constants The constant @target with value @new_value has been added. No effect. Removed_Constant Low Constants The constant @target with value @old_value has been removed. The value of this constant may no longer be properly handled by new-version library functions. Field_Became_Volatile Low Fields Field @target became volatile. The value of this field can begin to change in ways outside the control of old client applications. Field_Became_Non_Volatile Safe Fields Field @target became non-volatile. No effect. Return_Value_Became_Volatile Low Symbols Return value became volatile. Old client applications will get volatile object instead of non-volatile, but may be optimized by the compiler and cannot handle volatile objects. Parameter_Became_Non_Volatile Low Symbols Parameter @target became non-volatile. Old client applications will pass volatile object to the function that may be optimized by the compiler and cannot handle volatile objects. Field_Type_Format Medium Fields Type of field @target has been changed from @old_value to @new_value of different format. This field may be incorrectly initialized or accessed by applications. Field_BaseType_Format Medium Fields Base type of field @target has been changed from @old_value to @new_value of different format. This field may be incorrectly initialized or accessed by applications. Parameter_Type_Format Medium Parameters Type of parameter @target has been changed from @old_value to @new_value of different format. This parameter may be incorrectly initialized by applications. Parameter_BaseType_Format Medium Parameters Base type of parameter @target has been changed from @old_value to @new_value of different format. This parameter may be incorrectly initialized by applications. Return_Type_Format Medium Symbols Type of return value has been changed from @old_value to @new_value of different format. Applications will obtain a different return value and execution may change. Return_Type_And_Register Medium Symbols Type of return value has been changed from @old_value to @new_value. The return value became passed in different register. Applications will read the wrong memory block instead of the return value. Also, distribution of parameters on the available registers and stack may be changed. Return_BaseType_Format Medium Symbols Base type of return value has been changed from @old_value to @new_value of different format. This parameter may be incorrectly initialized by applications. Parameter_Became_Non_VaList Low Parameters Type of @param_pos parameter has been changed from ... (va_list) to @new_value. This parameter may not be initialized by old clients. Parameter_Became_VaList Low Parameters Type of @param_pos parameter @target has been changed from @old_value to ... (va_list). The semantic meaning of the parameter may change. Added_Enum_Member Safe Constants The member @target with value @new_value has been added. No effect. Global_Data_Value_Changed Low Symbols The initial value of this global data has been changed from @old_value to @new_value. Applications will use an old value of this data instead of the new one. This may cause incorrect behavior of applications. Field_Became_Mutable Low Fields Field @target became **mutable**. The value of this field can begin to change in ways outside the control of old client applications. Field_Became_Non_Mutable Low Fields Field @target became **non-mutable**. The value of this field can still be changed by const methods of old client applications, but it's not expected by new-version library. Method_Became_Private Low Symbols This method became **private**. Old applications will continue using this method, but it may require a different initialization of the environment and parameters. Method_Became_Protected Low Symbols This method became **protected**. Old applications will continue using this method, but it may require a different initialization of the environment and parameters. Method_Became_Public Safe Symbols This method became **public**. No effect. Global_Data_Became_Private Low Symbols This global data became **private**. Old applications will continue using this global data, but it may require a different initialization of the environment. Global_Data_Became_Protected Low Symbols This global data became **protected**. Old applications will continue using this global data, but it may require a different initialization of the environment. Global_Data_Became_Public Safe Symbols This global data became **public**. No effect. Field_Became_Const Low Types Field @target became **const**. The value of this field is expected to be **const** in new library version, but can be modified by old applications. Field_Became_Non_Const Safe Types Field @target became **non-const**. No effect. Field_Added_Const Low Types Added **const** qualifier to field @target. The value of this field is expected to be **const** in new library version, but can be modified by old applications. Field_Removed_Const Safe Types Removed **const** qualifier from field @target. No effect. Field_Became_Private Low Types Field @target became **private**. Old applications will continue using this field, but it may require a different initialization of class object. Field_Became_Protected Low Types Field @target became **protected**. Old applications will continue using this field, but it may require a different initialization of class object. Virtual_Method_Became_Pure Medium Types Virtual method @target became **pure**. Old applications will not provide implementation for this pure virtual method. This may result in crash or incorrect behavior of applications. Virtual_Method_Became_Non_Pure Safe Types Virtual method @target became **non-pure**. No effect. Type_Became_Opaque Medium Types This type became **opaque**. The internal structure of this type is hidden in the new library version and may be different. This may result in crash or incorrect behavior of applications.