From 3686c3b65c017cf8689b67db440b4cddd399538b Mon Sep 17 00:00:00 2001 From: Behdad Esfahbod Date: Thu, 9 May 2019 15:09:07 -0700 Subject: [PATCH] Adjust is_cr_convertible If To is const& then From doesn't need to be &. --- src/hb-meta.hh | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/src/hb-meta.hh b/src/hb-meta.hh index 9c8dfed..bcd541e 100644 --- a/src/hb-meta.hh +++ b/src/hb-meta.hh @@ -116,10 +116,16 @@ template using hb_remove_pointer = typename hb_match_pointer::ty /* TODO Add feature-parity to std::decay. */ template using hb_decay = hb_remove_const>; -#define hb_is_cr_convertible(From, To) ( \ - hb_is_same (hb_decay, hb_decay) && \ - hb_is_const (From) <= hb_is_const (To) && \ - hb_is_reference (From) >= hb_is_reference (To)) +#define hb_is_cr_convertible(From, To) \ + ( \ + hb_is_same (hb_decay, hb_decay) && \ + ( \ + hb_is_const (From) <= hb_is_const (To) && \ + hb_is_reference (From) >= hb_is_reference (To) \ + ) || ( \ + hb_is_const (To) && hb_is_reference (To) \ + ) \ + ) -- 2.7.4