operator!= fixes for C++-20

Without these changes, more recent versions of Clang will start to
emit diagnostics:

src/abg-ir.cc:15407:13: error: member 'operator!=' found in multiple base classes of different types
 15407 |   return *l == *r;
       |             ^
src/abg-ir.cc:14123:12: note: member found by ambiguous name lookup
 14123 | type_base::operator!=(const type_base& other) const
       |            ^
src/abg-ir.cc:5162:12: note: member found by ambiguous name lookup
 5162 | decl_base::operator!=(const decl_base& other) const
      |            ^

This fix was contributed by Ilya Biryukov.

	* include/abg-ir.h
	(qualified_typedef): Add definition of operator!=.
	(pointer_type_def): Likewise.
	(reference_type_def): Likewise.
	(class_or_union): Likewise.

Bug: 295399968
Reported-by: Ilya Biryukov <ibiryukov@google.com>
Change-Id: Ic86fcb51866f4f86fcc8e7181e3b7577adbf918d
Signed-off-by: Giuliano Procida <gprocida@google.com>
Signed-off-by: Dodji Seketeli <dodji@redhat.com>
1 file changed