On 08/27/2012 01:36 PM, Paolo Carlini wrote:
Thanks for the feedback. Indeed, as I tried to explain in an older message, that was also my understanding. The practical difficulty with the mapping (which you can also guess from the current structure of get_delta_difference_1, the if (kind == bk_inaccessible || kind == bk_ambig) check) is that ba_quiet, as used by lookup_base, doesn't just control the error calls - like normally tf_error does - it *also* changes the return value, error_mark_node or NULL_TREE. I'm still not sure about the correct (and concise! see get_delta_difference_1, again) way to handle this...
I think the right way is to adjust the callers to handle error_mark_node return properly. Macros may need to become functions.
Jason