Added more test cases.
diff --git a/INSTALL b/INSTALL
index 4f5ac87..915c6cb 100644
--- a/INSTALL
+++ b/INSTALL
@@ -10,7 +10,7 @@
Project: ABI Compliance Checker (ACC)
Version: 1.99.10
-Date: 2015-09-04
+Date: 2015-09-06
This file explains how to install and setup environment
diff --git a/modules/Internals/RegTests.pm b/modules/Internals/RegTests.pm
index ee1a7cf..23ab609 100644
--- a/modules/Internals/RegTests.pm
+++ b/modules/Internals/RegTests.pm
@@ -4077,6 +4077,43 @@
$DECL_SPEC void* returnTypeChangeToVoidPtr(int param);";
$SOURCE2 .= "
void* returnTypeChangeToVoidPtr(int param) { return (void*)0; }";
+
+ # Return_Type (structure change)
+ $HEADER1 .= "
+ struct SomeStruct2 {
+ int a;
+ int b;
+ };
+ $DECL_SPEC struct SomeStruct2 returnType2(int param);";
+ $SOURCE1 .= "
+ struct SomeStruct2 returnType2(int param) { struct SomeStruct2 r = {1, 2};return r; }";
+
+ $HEADER2 .= "
+ struct SomeStruct2 {
+ int a;
+ };
+ $DECL_SPEC struct SomeStruct2 returnType2(int param);";
+ $SOURCE2 .= "
+ struct SomeStruct2 returnType2(int param) { struct SomeStruct2 r = {1};return r; }";
+
+ # Return_Type (structure change)
+ $HEADER1 .= "
+ struct SomeStruct3 {
+ int a;
+ int b;
+ };
+ $DECL_SPEC struct SomeStruct3 returnType3(int param);";
+ $SOURCE1 .= "
+ struct SomeStruct3 returnType3(int param) { struct SomeStruct3 r = {1, 2};return r; }";
+
+ $HEADER2 .= "
+ struct SomeStruct3 {
+ int a;
+ long double b;
+ };
+ $DECL_SPEC struct SomeStruct3 returnType3(int param);";
+ $SOURCE2 .= "
+ struct SomeStruct3 returnType3(int param) { struct SomeStruct3 r = {1, 2.0L};return r; }";
# Return_Type_From_Void_And_Stack_Layout ("void" to "struct")
$HEADER1 .= "
@@ -4739,12 +4776,12 @@
changedDefaultVersion;
};
");
- $BuildCmd = $GCC_PATH." -Wl,--version-script version -shared libsample.$Ext -o libsample.$LIB_EXT -g";
+ $BuildCmd = $GCC_PATH." -Wl,--version-script version -shared libsample.$Ext -o libsample.$LIB_EXT -g -Og";
$BuildCmd_Test = $GCC_PATH." -Wl,--version-script version test.$Ext -Wl,libsample.$LIB_EXT -o test";
}
else
{
- $BuildCmd = $GCC_PATH." -shared -x c++ libsample.$Ext -lstdc++ -o libsample.$LIB_EXT -g";
+ $BuildCmd = $GCC_PATH." -shared -x c++ libsample.$Ext -lstdc++ -o libsample.$LIB_EXT -g -Og";
$BuildCmd_Test = $GCC_PATH." -x c++ test.$Ext -lstdc++ -Wl,libsample.$LIB_EXT -o test";
}
if(getArch_GCC(1)=~/\A(arm|x86_64)\Z/i)
@@ -4771,12 +4808,12 @@
# symbian target
if($Lang eq "C")
{
- $BuildCmd = $GCC_PATH." -shared libsample.$Ext -o libsample.$LIB_EXT -g";
+ $BuildCmd = $GCC_PATH." -shared libsample.$Ext -o libsample.$LIB_EXT -g -Og";
$BuildCmd_Test = $GCC_PATH." test.$Ext -Wl,libsample.$LIB_EXT -o test";
}
else
{ # C++
- $BuildCmd = $GCC_PATH." -shared -x c++ libsample.$Ext -lstdc++ -o libsample.$LIB_EXT -g";
+ $BuildCmd = $GCC_PATH." -shared -x c++ libsample.$Ext -lstdc++ -o libsample.$LIB_EXT -g -Og";
$BuildCmd_Test = $GCC_PATH." -x c++ test.$Ext -Wl,libsample.$LIB_EXT -o test";
}
}