[cfe-commits] [Patch] Print differences for function pointers.

Richard Trieu rtrieu at google.com
Mon Nov 21 14:44:01 PST 2011


Ping.

On Thu, Nov 17, 2011 at 12:45 PM, Matthieu Monrocq <
matthieu.monrocq at gmail.com> wrote:

>
>
> Le 17 novembre 2011 01:14, Richard Trieu <rtrieu at google.com> a écrit :
>
> On Wed, Nov 16, 2011 at 12:06 PM, Matthieu Monrocq <
>> matthieu.monrocq at gmail.com> wrote:
>>
>>>
>>>
>>> Le 15 novembre 2011 21:23, Richard Trieu <rtrieu at google.com> a écrit :
>>>
>>> New feature that will print additional information when non-matching
>>>> function pointers are used.  This will help users more easily distinguish
>>>> why the function pointers do not match.  The points of difference that will
>>>> be noted are:
>>>>
>>>> Different number of parameters
>>>> Different parameter type
>>>> Different return type
>>>> Different function qualifiers
>>>>
>>>> For instance, code like this:
>>>>
>>>> double foo(int x) {return 0;};
>>>> double (*bar)(int, int) = &foo;
>>>>
>>>> Will get this error message:
>>>>
>>>> function-mismatch.cc:2:10: error: cannot initialize a variable of
>>>>       type 'double (*)(int, int)' with an rvalue of type 'double
>>>> (*)(int)'
>>>>       because of different number of parameters (expected 2 but has 1)
>>>> double (*bar)(int, int) = &foo;
>>>>          ^                ~~~~
>>>>
>>>> Patch is attached and also available at
>>>> http://codereview.appspot.com/5369119/
>>>>
>>>>
>>>> Nice!
>>>
>>> Do you plan on adding something for a difference of class (for pointer
>>> to member functions) ? Or perhaps that it already exists...
>>>
>>> -- Matthieu
>>>
>>> Added a bit to the diagnostic message to say if they are from different
>> classes, as well as changes in response to comments Richard Smith made on
>> http://codereview.appspot.com/5369119/
>
>
> Thanks!
>
> -- Matthieu
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20111121/910285b8/attachment.html>


More information about the cfe-commits mailing list