------- Comment #3 from mikpe at it dot uu dot se  2009-10-17 22:08 -------
I just had a look at some gcc-4.4.2 testsuite failure on arm-linux-gnueabi, and
came across the uninit-13.c one and this PR.

The error is not that uninit-13.c triggers an "is used uninitialized" warning,
it's supposed to do that, but that on ARM the line number for the warning is
off-by-one.

On armv5tel-linux-gnueabi:
uninit-13.c: In function 'foo':
uninit-13.c:7: warning: '__real__ f' is used uninitialized in this function

On i686-pc-linux-gnu:
uninit-13.c: In function 'foo':
uninit-13.c:8: warning: '__real__ f' is used uninitialized in this function

Apparently x86-64 is also off-by-one, while my powerpc64 box agrees with i686.

If I replace the _Complex float with a struct of two floats like this:

typedef struct { float x; float y; } C;
C foo()
{
    float x; float y;
    x = 0;
    return (C){x, y};
}

then my i686 and ARM compilers emit identical warnings.

Something strange is happening with _Complex on ARM (and x86-64).


-- 

mikpe at it dot uu dot se changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |mikpe at it dot uu dot se


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39246

Reply via email to