[09/16] ir: Add missing ABG_RETURN in the comparison engine
Commit Message
Hello,
During structural type comparison, we want to be able to break on the
first occurrence of two sub-types comparing different. This is done
by setting a breakpoint into the notify_equality_failed function that
is called by the ABG_RETURN macro in the comparison functions.
The problem is that I stumbled upon some code paths that are missing
the ABG_RETURN macro. Fixed thus. This will help in debugging
sessions.
* src/abg-ir.cc (equals): In the overload for function_type,
class_decl and union_decl, add a missing ABG_RETURN.
Signed-off-by: Dodji Seketeli <dodji@redhat.com>
Applied to master.
---
src/abg-ir.cc | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
@@ -20257,8 +20257,8 @@ equals(const function_type& l, const function_type& r, change_kind* k)
// comparing them all over again.
bool cached_result = false;
if (l.get_environment().priv_->is_type_comparison_cached(l, r,
- cached_result))
- return cached_result;
+ cached_result))
+ ABG_RETURN(cached_result);
}
mark_types_as_being_compared(l, r);
@@ -24251,7 +24251,7 @@ equals(const class_decl& l, const class_decl& r, change_kind* k)
// over again.
bool result = false;
if (l.get_environment().priv_->is_type_comparison_cached(l, r, result))
- return result;
+ ABG_RETURN(result);
}
// if one of the classes is declaration-only then we take a fast
@@ -25438,7 +25438,7 @@ equals(const union_decl& l, const union_decl& r, change_kind* k)
// over again.
bool result = false;
if (l.get_environment().priv_->is_type_comparison_cached(l, r, result))
- return result;
+ ABG_RETURN(result);
}
bool result = equals(static_cast<const class_or_union&>(l),