libabigail/tests/data/test-read-dwarf
Dodji Seketeli 43cbdd1501 ir: Recognize "void* as being equal to all other pointers in C
Today, the pointer-to-void type is naively considered as being
different to all other pointers by Libabigail.  This indirectly leads
to spurious changes in code bases where we have this kind of pattern:

    /* in foo.h */
    typedef void* some_pointer_type;

    struct foo
    {
      some_pointer_type member;
    };

    bool
    test_some_pointer_type(some_pointer_type);

    /* This header file is included by client code */

    /*in foo.c */
    typedef int* some_pointer_type;

    struct foo
    {
      some_pointer_type member;
    };

    bool
    test_some_pointer_type(some_pointer_type f)
    {
      /* The actual implementation.  */
    }

Another way to reproduce that spurious change is to run this command:

    $ fedabipkgdiff  --self-compare -a --from fc37 glibc

	* include/abg-fwd.h (is_void_pointer_type): Declare new function.
	* src/abg-ir.cc (is_void_pointer_type): Define new function.
	(equals): In the overload for pointer_type_def, handle the special
	case pointer to void, making it equal to all other pointer, for
	the C language.
	(is_non_canonicalized_type): pointer to void is no more
	canonicalized as it can be equal to all other types.
	* tests/data/test-annotate/libtest23.so.abi: Adjust
	* tests/data/test-annotate/libtest24-drop-fns-2.so.abi: Likewise.
	* tests/data/test-annotate/libtest24-drop-fns.so.abi: Likewise.
	* tests/data/test-annotate/test1.abi: Likewise.
	* tests/data/test-annotate/test13-pr18894.so.abi: Likewise.
	* tests/data/test-annotate/test14-pr18893.so.abi: Likewise.
	* tests/data/test-annotate/test15-pr18892.so.abi: Likewise.
	* tests/data/test-annotate/test17-pr19027.so.abi: Likewise.
	* tests/data/test-annotate/test18-pr19037-libvtkRenderingLIC-6.1.so.abi:
	Likewise.
	* tests/data/test-annotate/test19-pr19023-libtcmalloc_and_profiler.so.abi:
	Likewise.
	* tests/data/test-annotate/test20-pr19025-libvtkParallelCore-6.1.so.abi:
	Likewise.
	* tests/data/test-annotate/test21-pr19092.so.abi: Likewise.
	* tests/data/test-annotate/test5.o.abi: Likewise.
	* tests/data/test-diff-filter/test31-pr18535-libstdc++-report-1.txt:
	Likewise.
	* tests/data/test-diff-filter/test47-filter-void-ptr-change-report-0.txt:
	Likewise.
	* tests/data/test-read-dwarf/PR22015-libboost_iostreams.so.abi:
	Likewise.
	* tests/data/test-read-dwarf/PR22122-libftdc.so.abi: Likewise.
	* tests/data/test-read-dwarf/PR25007-sdhci.ko.abi: Likewise.
	* tests/data/test-read-dwarf/PR25042-libgdbm-clang-dwarf5.so.6.0.0.abi:
	Likewise.
	* tests/data/test-read-dwarf/libtest23.so.abi: Likewise.
	* tests/data/test-read-dwarf/libtest24-drop-fns-2.so.abi: Likewise.
	* tests/data/test-read-dwarf/libtest24-drop-fns.so.abi: Likewise.
	* tests/data/test-read-dwarf/test-libaaudio.so.abi: Likewise.
	* tests/data/test-read-dwarf/test-libandroid.so.abi: Likewise.
	* tests/data/test-read-dwarf/test1.abi: Likewise.
	* tests/data/test-read-dwarf/test1.hash.abi: Likewise.
	* tests/data/test-read-dwarf/test10-pr18818-gcc.so.abi: Likewise.
	* tests/data/test-read-dwarf/test11-pr18828.so.abi: Likewise.
	* tests/data/test-read-dwarf/test12-pr18844.so.abi: Likewise.
	* tests/data/test-read-dwarf/test13-pr18894.so.abi: Likewise.
	* tests/data/test-read-dwarf/test14-pr18893.so.abi: Likewise.
	* tests/data/test-read-dwarf/test15-pr18892.so.abi: Likewise.
	* tests/data/test-read-dwarf/test16-pr18904.so.abi: Likewise.
	* tests/data/test-read-dwarf/test17-pr19027.so.abi: Likewise.
	* tests/data/test-read-dwarf/test18-pr19037-libvtkRenderingLIC-6.1.so.abi: Likewise.
	* tests/data/test-read-dwarf/test19-pr19023-libtcmalloc_and_profiler.so.abi: Likewise.
	* tests/data/test-read-dwarf/test20-pr19025-libvtkParallelCore-6.1.so.abi:
	Likewise.
	* tests/data/test-read-dwarf/test21-pr19092.so.abi: Likewise.
	* tests/data/test-read-dwarf/test22-pr19097-libstdc++.so.6.0.17.so.abi:
	Likewise.
	* tests/data/test-read-dwarf/test5.o.abi: Likewise.
	* tests/data/test-read-dwarf/test5.o.hash.abi: Likewise.
	* tests/data/test-read-dwarf/test9-pr18818-clang.so.abi: Likewise.

Signed-off-by: Dodji Seketeli <dodji@redhat.com>
2023-04-14 12:38:07 +02:00
..
PR26261 Bug 29340 - Add support for Ada range types 2023-03-31 23:14:01 +02:00
PR27700 Bug 29340 - Add support for Ada range types 2023-03-31 23:14:01 +02:00
PR28584 Bug 29340 - Add support for Ada range types 2023-03-31 23:14:01 +02:00
libtest23.so Support DW_TAG_type_unit 2016-07-26 20:07:03 +02:00
libtest23.so.abi ir: Recognize "void* as being equal to all other pointers in C 2023-04-14 12:38:07 +02:00
libtest24-drop-fns-2.so.abi ir: Recognize "void* as being equal to all other pointers in C 2023-04-14 12:38:07 +02:00
libtest24-drop-fns.so Drop suppressed ABI artifacts from the IR 2016-09-21 18:35:08 +02:00
libtest24-drop-fns.so.abi ir: Recognize "void* as being equal to all other pointers in C 2023-04-14 12:38:07 +02:00
PR22015-libboost_iostreams.so Bug 22015 - Failing to return global scope of a DIE in certain cases 2017-08-28 12:13:32 +02:00
PR22015-libboost_iostreams.so.abi ir: Recognize "void* as being equal to all other pointers in C 2023-04-14 12:38:07 +02:00
PR22122-libftdc.so Bug 22122 - Fail to represent 'const array' 2017-09-11 18:07:02 +02:00
PR22122-libftdc.so.abi ir: Recognize "void* as being equal to all other pointers in C 2023-04-14 12:38:07 +02:00
PR24378-fn-is-not-scope.abi Bug 29340 - Add support for Ada range types 2023-03-31 23:14:01 +02:00
PR24378-fn-is-not-scope.o Bug 24378 - DW_TAG_subroutine_type as a DIE scope causes infinite loop 2019-03-25 14:46:31 +01:00
PR25007-sdhci.ko Bug 25007 - Don't use section-relative symbol values on ET_REL binaries 2019-09-20 14:13:12 +02:00
PR25007-sdhci.ko.abi ir: Recognize "void* as being equal to all other pointers in C 2023-04-14 12:38:07 +02:00
PR25042-libgdbm-clang-dwarf5.so.6.0.0 PR25042 - Support string form DW_FORM_strx{1,4} from DWARF 5 2019-10-01 14:14:41 +02:00
PR25042-libgdbm-clang-dwarf5.so.6.0.0.abi ir: Recognize "void* as being equal to all other pointers in C 2023-04-14 12:38:07 +02:00
PR29443-missing-xx.cc Bug PR29443 - Global variables not emitted to abixml in some cases 2022-09-20 08:55:59 +02:00
PR29443-missing-xx.o Bug PR29443 - Global variables not emitted to abixml in some cases 2022-09-20 08:55:59 +02:00
PR29443-missing-xx.o.abi Bug 29340 - Add support for Ada range types 2023-03-31 23:14:01 +02:00
PR29692-kdelibs3-libkjava.so.1.0.0 Bug 29692 - Support binaries with empty symbol table 2023-03-22 15:32:10 +01:00
PR29692-kdelibs3-libkjava.so.1.0.0.abi Bug 29340 - Add support for Ada range types 2023-03-31 23:14:01 +02:00
test0 Tweak dwarf reading test to detect more namespace linking-fu 2014-01-13 17:36:20 +01:00
test0.abi Bug 29340 - Add support for Ada range types 2023-03-31 23:14:01 +02:00
test0.cc Tweak dwarf reading test to detect more namespace linking-fu 2014-01-13 17:36:20 +01:00
test0.hash.abi Bug 29340 - Add support for Ada range types 2023-03-31 23:14:01 +02:00
test1 Add regression tests for dwarf reading 2014-01-07 15:51:52 +01:00
test1.abi ir: Recognize "void* as being equal to all other pointers in C 2023-04-14 12:38:07 +02:00
test1.cc Add regression tests for dwarf reading 2014-01-07 15:51:52 +01:00
test1.hash.abi ir: Recognize "void* as being equal to all other pointers in C 2023-04-14 12:38:07 +02:00
test2-0.cc Initial support for DW_TAG_partial_unit 2014-05-19 17:26:40 +02:00
test2-1.cc Initial support for DW_TAG_partial_unit 2014-05-19 17:26:40 +02:00
test2.h Initial support for DW_TAG_partial_unit 2014-05-19 17:26:40 +02:00
test2.so Initial support for DW_TAG_partial_unit 2014-05-19 17:26:40 +02:00
test2.so.abi Bug 29340 - Add support for Ada range types 2023-03-31 23:14:01 +02:00
test2.so.hash.abi Bug 29340 - Add support for Ada range types 2023-03-31 23:14:01 +02:00
test3-alias-1.so.hash.abi Bug 29340 - Add support for Ada range types 2023-03-31 23:14:01 +02:00
test3-alias-2.so.hash.abi Bug 29340 - Add support for Ada range types 2023-03-31 23:14:01 +02:00
test3-alias-3.so.hash.abi Bug 29340 - Add support for Ada range types 2023-03-31 23:14:01 +02:00
test3-alias-4.so.hash.abi Bug 29340 - Add support for Ada range types 2023-03-31 23:14:01 +02:00
test3.so.abi Bug 29340 - Add support for Ada range types 2023-03-31 23:14:01 +02:00
test3.so.hash.abi Bug 29340 - Add support for Ada range types 2023-03-31 23:14:01 +02:00
test4.so.abi Bug 29340 - Add support for Ada range types 2023-03-31 23:14:01 +02:00
test4.so.hash.abi Bug 29340 - Add support for Ada range types 2023-03-31 23:14:01 +02:00
test5.cc Support reading void* type from DWARF 2014-06-23 17:31:26 +02:00
test5.o Support reading void* type from DWARF 2014-06-23 17:31:26 +02:00
test5.o.abi ir: Recognize "void* as being equal to all other pointers in C 2023-04-14 12:38:07 +02:00
test5.o.hash.abi ir: Recognize "void* as being equal to all other pointers in C 2023-04-14 12:38:07 +02:00
test6.cc Consider symbols with STB_GNU_UNIQUE binding as public 2014-07-08 14:18:36 +02:00
test6.so Consider symbols with STB_GNU_UNIQUE binding as public 2014-07-08 14:18:36 +02:00
test6.so.abi Bug 29340 - Add support for Ada range types 2023-03-31 23:14:01 +02:00
test6.so.hash.abi Bug 29340 - Add support for Ada range types 2023-03-31 23:14:01 +02:00
test7.cc Support C and C++ array type. 2014-08-22 13:07:41 +02:00
test7.so Support C and C++ array type. 2014-08-22 13:07:41 +02:00
test7.so.abi dwarf-reader: Support Ada subranges having upper_bound < lower_bound 2023-04-05 16:54:32 +02:00
test7.so.hash.abi dwarf-reader: Support Ada subranges having upper_bound < lower_bound 2023-04-05 16:54:32 +02:00
test8-qualified-this-pointer.cc Yet another fix to the DWARF method "static-ness" detection heuristic 2014-10-16 23:49:41 +02:00
test8-qualified-this-pointer.so Yet another fix to the DWARF method "static-ness" detection heuristic 2014-10-16 23:49:41 +02:00
test8-qualified-this-pointer.so.abi Bug 29340 - Add support for Ada range types 2023-03-31 23:14:01 +02:00
test8-qualified-this-pointer.so.hash.abi Bug 29340 - Add support for Ada range types 2023-03-31 23:14:01 +02:00
test9-pr18818-clang.so Bug 18818 - abidw aborts on a class with a non-complete base class 2015-08-14 16:22:14 +02:00
test9-pr18818-clang.so.abi ir: Recognize "void* as being equal to all other pointers in C 2023-04-14 12:38:07 +02:00
test10-pr18818-gcc.so Bug 18818 - abidw aborts on a class with a non-complete base class 2015-08-14 16:22:14 +02:00
test10-pr18818-gcc.so.abi ir: Recognize "void* as being equal to all other pointers in C 2023-04-14 12:38:07 +02:00
test11-pr18828.so Bug 18828 - Handle force-resolving of multiple declarations-only of the same type 2015-08-15 00:26:39 +02:00
test11-pr18828.so.abi ir: Recognize "void* as being equal to all other pointers in C 2023-04-14 12:38:07 +02:00
test12-pr18844.so Bug 18844 - assert failure in abidw at abg-dwarf-reader.cc:6537 2015-08-18 12:33:57 +02:00
test12-pr18844.so.abi ir: Recognize "void* as being equal to all other pointers in C 2023-04-14 12:38:07 +02:00
test13-pr18894.so Bug 18894 - Fix representation of enumerators in abixml format 2015-08-29 17:17:48 +02:00
test13-pr18894.so.abi ir: Recognize "void* as being equal to all other pointers in C 2023-04-14 12:38:07 +02:00
test14-pr18893.so Bug 18893 - type degradation from dwarf to abixml on libGLU.so 2015-08-30 17:11:36 +02:00
test14-pr18893.so.abi ir: Recognize "void* as being equal to all other pointers in C 2023-04-14 12:38:07 +02:00
test15-pr18892.so Bug 18892 - type degradation from DWARF to abixml on libtsan.so 2015-08-30 17:56:19 +02:00
test15-pr18892.so.abi ir: Recognize "void* as being equal to all other pointers in C 2023-04-14 12:38:07 +02:00
test16-pr18904.so More type degradation fixes (from DWARF to abixml) 2015-09-02 14:15:58 +02:00
test16-pr18904.so.abi ir: Recognize "void* as being equal to all other pointers in C 2023-04-14 12:38:07 +02:00
test17-pr19027.so Bug 19027 - ABI asymmetry with enums over INT_MAX 2015-10-01 11:40:52 +02:00
test17-pr19027.so.abi ir: Recognize "void* as being equal to all other pointers in C 2023-04-14 12:38:07 +02:00
test18-pr19037-libvtkRenderingLIC-6.1.so Bug 19037 - Make ABI corpus support several functions with same symbol 2015-10-06 13:32:12 +02:00
test18-pr19037-libvtkRenderingLIC-6.1.so.abi ir: Recognize "void* as being equal to all other pointers in C 2023-04-14 12:38:07 +02:00
test19-pr19023-libtcmalloc_and_profiler.so Bug 19023 - Type canonicalization is sensitive to struct-ness 2015-10-07 00:41:32 +02:00
test19-pr19023-libtcmalloc_and_profiler.so.abi ir: Recognize "void* as being equal to all other pointers in C 2023-04-14 12:38:07 +02:00
test20-pr19025-libvtkParallelCore-6.1.so Bug 19025 - abixml writer forgets to emit some member types 2015-10-08 13:50:49 +02:00
test20-pr19025-libvtkParallelCore-6.1.so.abi ir: Recognize "void* as being equal to all other pointers in C 2023-04-14 12:38:07 +02:00
test21-pr19092.so Bug 19092 - abidw aborts on types that violate the ODR 2015-10-15 16:22:14 +02:00
test21-pr19092.so.abi ir: Recognize "void* as being equal to all other pointers in C 2023-04-14 12:38:07 +02:00
test22-pr19097-libstdc++.so.6.0.17.so Adjust regression tests reference output for the current patch set 2015-10-17 16:18:36 +02:00
test22-pr19097-libstdc++.so.6.0.17.so.abi ir: Recognize "void* as being equal to all other pointers in C 2023-04-14 12:38:07 +02:00
test23-first-tu.cc Support DW_TAG_type_unit 2016-07-26 20:07:03 +02:00
test23-second-tu.cc Support DW_TAG_type_unit 2016-07-26 20:07:03 +02:00
test24-drop-fns-0.suppr Drop suppressed ABI artifacts from the IR 2016-09-21 18:35:08 +02:00
test24-drop-fns.cc Drop suppressed ABI artifacts from the IR 2016-09-21 18:35:08 +02:00
test25-bogus-binary.elf dwarf-reader: handle symtab.section_header.sh_entsize == 0 2020-01-24 22:53:30 +00:00
test26-bogus-binary.elf dwarf-reader: handle binaries with missing symtab 2020-01-25 21:40:14 +00:00
test27-bogus-binary.elf dwarf-reader: remove superfluous ABG_ASSERT 2020-03-18 23:10:14 +01:00
test-fallback.abi Bug 29340 - Add support for Ada range types 2023-03-31 23:14:01 +02:00
test-fallback.c Use the CTF reader by default when applicable 2022-11-28 16:52:33 +01:00
test-fallback.o Use the CTF reader by default when applicable 2022-11-28 16:52:33 +01:00
test-libaaudio.so symtab-reader: add support for binaries compiled with CFI 2021-07-15 17:47:33 +02:00
test-libaaudio.so.abi ir: Recognize "void* as being equal to all other pointers in C 2023-04-14 12:38:07 +02:00
test-libandroid.so dwarf-reader: Ignore zero length location expressions from DW_AT_location 2020-11-02 18:07:01 +01:00
test-libandroid.so.abi ir: Recognize "void* as being equal to all other pointers in C 2023-04-14 12:38:07 +02:00
test-PR26568-1.o.abi Bug 29340 - Add support for Ada range types 2023-03-31 23:14:01 +02:00
test-PR26568-2.o.abi Bug 29340 - Add support for Ada range types 2023-03-31 23:14:01 +02:00
test-suppressed-alias.c dwarf-reader/writer: consider aliases when dealing with suppressions 2021-04-02 16:05:32 +02:00
test-suppressed-alias.o dwarf-reader/writer: consider aliases when dealing with suppressions 2021-04-02 16:05:32 +02:00
test-suppressed-alias.o.abi Bug 29340 - Add support for Ada range types 2023-03-31 23:14:01 +02:00
test-suppressed-alias.suppr dwarf-reader/writer: consider aliases when dealing with suppressions 2021-04-02 16:05:32 +02:00