From: Jason Merrill Date: Tue, 31 Aug 2021 16:54:37 +0000 (-0400) Subject: tree: Change error_operand_p to an inline function X-Git-Tag: upstream/12.2.0~5309 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=c03db573b9e619f9e4f7d7111f99877368c78e26;p=platform%2Fupstream%2Fgcc.git tree: Change error_operand_p to an inline function I've thought for a while that many of the macros in tree.h and such should become inline functions. This one in particular was confusing Coverity; the null check in the macro made it think that all code guarded by error_operand_p would also need null checks. gcc/ChangeLog: * tree.h (error_operand_p): Change to inline function. --- diff --git a/gcc/tree.h b/gcc/tree.h index 1559fe0..1b51420 100644 --- a/gcc/tree.h +++ b/gcc/tree.h @@ -4365,11 +4365,14 @@ tree_strip_any_location_wrapper (tree exp) #define long_long_integer_type_node integer_types[itk_long_long] #define long_long_unsigned_type_node integer_types[itk_unsigned_long_long] -/* True if NODE is an erroneous expression. */ +/* True if T is an erroneous expression. */ -#define error_operand_p(NODE) \ - ((NODE) == error_mark_node \ - || ((NODE) && TREE_TYPE ((NODE)) == error_mark_node)) +inline bool +error_operand_p (const_tree t) +{ + return (t == error_mark_node + || (t && TREE_TYPE (t) == error_mark_node)); +} /* Return the number of elements encoded directly in a VECTOR_CST. */