Turn check macros into functions. (issue6188088)

Richard Guenther richard.guenther@gmail.com
Fri May 18 12:06:00 GMT 2012


On Fri, May 18, 2012 at 1:46 PM, Diego Novillo <dnovillo@google.com> wrote:
> On 12-05-18 06:14 , Richard Guenther wrote:
>
>> As you retain the macros anyway you can simply not return anything
>> from the C++ checking functions define to a stmt expression
>> ({ check_in_cxx (t); t; })
>
>
> Sure, but that takes us back to the original gdb issue: it does not
> understand statement expressions.
>
>
>> Btw, what breaks if the check functions always return a const_tree and
>> take a const_tree?
>
>
> You get a stream of "invalid conversion from 'tree_node* const*' to
> 'tree_node**'".

Can you locate those?  I mean, most uses look like

#define DECL_NONSHAREABLE(NODE) \
  (TREE_CHECK2 (NODE, VAR_DECL, \
                RESULT_DECL)->decl_common.decl_nonshareable_flag)

thus they only dereference the result, not assign it anywhere.

Richard.

>
> Diego.



More information about the Gcc-patches mailing list