This is the mail archive of the
cygwin
mailing list for the Cygwin project.
Re: gcc bug: convert_move -O3
- From: "Gerrit P. Haase" <gerrit at familiehaase dot de>
- To: Reini Urban <rurban at x-ray dot at>
- Cc: Cygwin List <cygwin at cygwin dot com>
- Date: Thu, 30 Jun 2005 13:10:05 +0200
- Subject: Re: gcc bug: convert_move -O3
- References: <42C3A0F8.10906@x-ray.at> <42C3A474.1000908@x-ray.at>
Reini Urban wrote:
oops.
Not yet tested for other gcc versions,
but I know that it worked for previous perl/gcc versions.
Maybe just that previous perls didn't use -O3
$ gcc -v
[...]
gcc version 3.3.3 (cygwin special)
Reini Urban schrieb:
easy reproducible testcase:
cat > gccO3bug.c
static int hack30_pray(ax, items, func)
int ax;
int items;
void *func;
{
return 0;
}
int main () {
int ax, items;
void * symref;
float num;
num = ((*((float (*)()) hack30_pray))(ax,items,symref));
return 0;
}
^D
gcc -c -O3 gccO3bug.c
internal compiler error: in convert_move, at expr.c:597
With gcc-3.4.4 I get:
$ gcc -O3 -c gccO3bug.c
gccO3bug.c: In function `main':
gccO3bug.c:13: warning: function called through a non-compatible type
gccO3bug.c:13: note: if this code is reached, the program will abort
S.th. wrong with your testcase?
Can you try if the Perl extension compiles with gcc 3.4.4, and please
send me a patch for the testsuite:
Running make test
make[1]: Entering directory
`/home/gerrit/.cpan/build/C-DynaLib-0.55/DynaLib'
make[1]: Leaving directory `/home/gerrit/.cpan/build/C-DynaLib-0.55/DynaLib'
/usr/bin/perl.exe "-Iblib/lib" "-Iblib/arch" test.pl
1..10
ok 1
not ok 2
Can't load -lc: dlopen, Win32 error 5 at blib/lib/C/DynaLib.pm line 52.
Giving up.
make: *** [test_dynamic] Error 13
/usr/bin/make test -- NOT OK
Running make install
make test had returned bad status, won't install without force
Gerrit
--
=^..^=
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/