diff --git a/abi-compliance-checker-gcc8.patch b/abi-compliance-checker-gcc8.patch deleted file mode 100644 index 0aab554..0000000 --- a/abi-compliance-checker-gcc8.patch +++ /dev/null @@ -1,100 +0,0 @@ ---- a/modules/Internals/SysFiles.pm -+++ a/modules/Internals/SysFiles.pm -@@ -1,7 +1,7 @@ - ########################################################################### - # A module to find system files and automatically generate include paths - # --# Copyright (C) 2015-2017 Andrey Ponomarenko's ABI Laboratory -+# Copyright (C) 2015-2018 Andrey Ponomarenko's ABI Laboratory - # - # Written by Andrey Ponomarenko - # -@@ -31,7 +31,7 @@ my %BinUtils = map {$_=>1} ( - ); - - # Header file extensions as described by gcc --my $HEADER_EXT = "h|hh|hp|hxx|hpp|h\\+\\+"; -+my $HEADER_EXT = "h|hh|hp|hxx|hpp|h\\+\\+|tcc|txx|x|inl|inc|ads|isph"; - - my %GlibcHeader = map {$_=>1} ( - "aliases.h", -@@ -760,11 +760,13 @@ sub detectDefaultPaths($$$$) - printMsg("INFO", "Using GCC $GccVer ($Target, target: ".getArch_GCC(1).")"); - - # check GCC version -- if($GccVer=~/\A4\.8(|\.[012])|6\..*|7\..*\Z/) -+ if($GccVer=~/\A(4\.8(|\.[012])|[67]\..*)\Z/ or cmpVersions($GccVer, "8")>=0) - { # GCC 4.8.[0-2]: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57850 - # GCC 6.[1-2].0: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78040 - # GCC 7.1: still the same issue ... -- printMsg("WARNING", "May not work properly with GCC 4.8.[0-2], 6.* and higher due to bug #78040 in GCC. Please try other GCC versions with the help of --gcc-path=PATH option or try creating ABI dumps by ABI Dumper tool instead."); -+ # GCC 8: still the same issue ... -+ # ABICC 2.3: enable this for all future GCC versions -+ printMsg("WARNING", "May not work properly with GCC 4.8.[0-2], 6.* and higher due to bug #78040 in GCC. Please try other GCC versions with the help of --gcc-path=PATH option or create ABI dumps by ABI Dumper tool instead to avoid using GCC. Test selected GCC version first by -test option."); - $In::Opt{"GccMissedMangling"} = 1; - } - } ---- a/modules/Internals/TUDump.pm -+++ a/modules/Internals/TUDump.pm -@@ -1,7 +1,7 @@ - ########################################################################### - # A module to create AST dump - # --# Copyright (C) 2015-2016 Andrey Ponomarenko's ABI Laboratory -+# Copyright (C) 2015-2018 Andrey Ponomarenko's ABI Laboratory - # - # Written by Andrey Ponomarenko - # -@@ -282,9 +282,17 @@ sub createTUDump($) - $HeaderPath = $PrePath; - } - -+ my $GCC_8 = checkGcc("8"); # support for GCC 8 and new options -+ - if($In::ABI{$LVer}{"Language"} eq "C++") - { # add classes and namespaces to the dump -- my $CHdump = "-fdump-class-hierarchy -c"; -+ my $CHdump = "-fdump-class-hierarchy"; -+ if($GCC_8) -+ { # -fdump-lang-class instead of -fdump-class-hierarchy -+ $CHdump = "-fdump-lang-class"; -+ } -+ $CHdump .= " -c"; -+ - if($In::Desc{$LVer}{"CppMode"}==1 - or $MinGWMode{$LVer}==1) { - $CHdump .= " -fpreprocessed"; -@@ -388,8 +396,14 @@ sub createTUDump($) - } - } - writeLog($LVer, "Temporary header file \'$TmpHeaderPath\' with the following content will be compiled to create GCC translation unit dump:\n".readFile($TmpHeaderPath)."\n"); -+ - # create TU dump -- my $TUdump = "-fdump-translation-unit -fkeep-inline-functions -c"; -+ my $TUdump = "-fdump-translation-unit"; -+ if ($GCC_8) -+ { # -fdump-lang-raw instead of -fdump-translation-unit -+ $TUdump = "-fdump-lang-raw"; -+ } -+ $TUdump .= " -fkeep-inline-functions -c"; - if($In::Opt{"UserLang"} eq "C") { - $TUdump .= " -U__cplusplus -D_Bool=\"bool\""; - } -@@ -458,8 +472,15 @@ sub createTUDump($) - - unlink($TmpHeaderPath); - unlink($HeaderPath); -- -- if(my @TUs = cmdFind($TmpDir,"f","*.tu",1)) { -+ -+ my $dumpExt; -+ if ($GCC_8) { -+ $dumpExt = "*.raw"; -+ } -+ else { -+ $dumpExt = "*.tu"; -+ } -+ if(my @TUs = cmdFind($TmpDir,"f",$dumpExt,1)) { - return $TUs[0]; - } - else