invalid "may be used uninitialized" warning with g++ current

Дмитрий Дьяченко dimhen@gmail.com
Thu Feb 5 10:01:00 GMT 2009


Thank you.

Dmitry

2009/2/5 Andrew Haley <aph@redhat.com>:
> Дмитрий Дьяченко wrote:
>
>> 2009/2/5 Andrew Pinski <pinskia@gmail.com>:
>>> On Wed, Feb 4, 2009 at 1:18 PM, Дмитрий Дьяченко <dimhen@gmail.com> wrote:
>>>> The following code
>>>>
>>>> int bar(int *global)
>>>> {
>>>>    int local;
>>>>    if(&local != global)
>>>>        return 0;
>>>>    return local;
>>>> }
>>> The issue is that GCC does not figure that global cannot point to
>>> local so it does not optimize away the if statement.
>
>> Sorry, but I don't understood  - is it impossible to fix, so there are
>> no needs in bug report?
>> Or PR about this issue already exists?
>> Or it's not a bug?
>
> It's not a bug.  gcc is warning you that the return statement may use an
> uninitialized local.  It does, so there is not a bug.  The fact that the
> return statement isn't reachable doesn't imply that there should be no
> warning.
>
> Andrew.
>



More information about the Gcc-help mailing list